vitalif
Vitaliy Filippov 2013-07-18 19:20:46 +04:00
parent d05fe0e543
commit 741c9744f8
58 changed files with 2849 additions and 0 deletions

View File

@ -0,0 +1,239 @@
[define page_title]Diff of /[where][end]
[define help_href][docroot]/help_rootview.html[end]
[# end]
[include "include/header.ezt" "diff"]
[include "include/file_header.ezt"]
<h3 style="text-align:center;"></h3>
[if-any raw_diff]
<pre class="vc_raw_diff">[raw_diff]</pre>
[end]
[define left_view_href][if-any left.prefer_markup][left.view_href][else][if-any left.download_href][left.download_href][end][end][end]
[define right_view_href][if-any right.prefer_markup][right.view_href][else][if-any right.download_href][right.download_href][end][end][end]
[if-any changes]
<table class="vc_diff_table">
<tr class="vc_diff_header" style="background-image:url([docroot]/images/lines-45wt.gif)">
<th></th>
<th style="width:50%; vertical-align:top;">
[is left.path right.path][else][left.path][end]
revision [if-any left_view_href]<a href="[left_view_href]">[end][left.rev][if-any left_view_href]</a>[end],
[left.date]
[if-any left.tag]<br />Tag: [left.tag][end]
</th>
<th style="width:50%; vertical-align:top;">
[is left.path right.path][else][right.path][end]
revision [if-any right_view_href]<a href="[right_view_href]">[end][right.rev][if-any right_view_href]</a>[end],
[right.date]
[if-any right.tag]<br />Tag: [right.tag][end]
</th>
</tr>
[for changes]
[is changes.type "header"]
<tr class="vc_diff_chunk_header" id="h[changes.line_info_right]">
<td><strong>#</strong></td>
<td style="width:50%;">
<strong>Line [changes.line_info_left]</strong>&nbsp;
<span class="vc_diff_chunk_extra">[changes.line_info_extra]</span>
</td>
<td style="width:50%;">
<strong>Line [changes.line_info_right]</strong>&nbsp;
<span class="vc_diff_chunk_extra">[changes.line_info_extra]</span>
</td>
</tr>
[else]
[is changes.type "add"]
<tr>
<td id="l[changes.line_number]" class="vc_diff_line_number add">[if-any right.annotate_href]<a href="[right.annotate_href]#l[changes.line_number]">[changes.line_number]</a>[else][changes.line_number][end]</td>
<td class="vc_diff_empty">&nbsp;</td>
<td class="vc_diff_add">&nbsp;[changes.right]</td>
</tr>
[else]
[is changes.type "remove"]
<tr>
<td class="vc_diff_line_number remove"></td>
<td class="vc_diff_remove">&nbsp;[changes.left]</td>
<td class="vc_diff_empty">&nbsp;</td>
</tr>
[else]
[is changes.type "change"]
<tr>
[if-any changes.have_right]
<td id="l[changes.line_number]" class="vc_diff_line_number chg">[if-any right.annotate_href]<a href="[right.annotate_href]#l[changes.line_number]">[changes.line_number]</a>[else][changes.line_number][end]</td>
[else]
<td></td>
[end]
[if-any changes.have_left]
<td class="vc_diff_change">&nbsp;[changes.left]</td>
[else]
<td class="vc_diff_change_empty">&nbsp;</td>
[end]
[if-any changes.have_right]
<td class="vc_diff_change">&nbsp;[changes.right]</td>
[else]
<td class="vc_diff_change_empty">&nbsp;</td>
[end]
</tr>
[else]
[is changes.type "no-changes"]
<tr>
<td colspan="3">&nbsp;</td>
</tr>
<tr class="vc_diff_empty">
<td colspan="3" style="text-align:center;"><br />
<strong>- No changes -</strong><br />&nbsp; </td>
</tr>
[else]
[is changes.type "binary-diff"]
<tr>
<td colspan="3">&nbsp;</td>
</tr>
<tr class="vc_diff_empty">
<td colspan="3" style="text-align:center;"><br />
<strong>- Binary file revisions differ -</strong><br />&nbsp; </td>
</tr>
[else]
[is changes.type "error"]
<tr>
<td colspan="3">&nbsp;</td>
</tr>
<tr class="vc_diff_empty">
<td colspan="3" style="text-align:center;"> <br />
<strong>- ViewVC depends on rcsdiff and GNU diff to create
this page. ViewVC cannot find GNU diff. Even if you
have GNU diff installed, the rcsdiff program must be
configured and compiled with the GNU diff location.
-</strong> <br />&nbsp; </td>
</tr>
[else]
<tr>
<td id="l[changes.line_number]" class="vc_diff_line_number etc">[if-any right.annotate_href]<a href="[right.annotate_href]#l[changes.line_number]">[changes.line_number]</a>[else][changes.line_number][end]</td>
<td class="vc_diff_nochange">&nbsp;[changes.left]</td>
<td class="vc_diff_nochange">&nbsp;[changes.right]</td>
</tr>
[end]
[end]
[end]
[end]
[end]
[end]
[end]
[end]
</table>
[end]
[if-any sidebyside]
<table class="vc_idiff">
<colgroup><col /><col class="content" /></colgroup>
<colgroup><col /><col class="content" /></colgroup>
<thead>
<tr>
<th colspan="2">
[is left.path right.path][else][left.path][end]
Revision [left.rev]
</th>
<th colspan="2">
[is left.path right.path][else][right.path][end]
Revision [right.rev]
</th>
</tr>
</thead>
<tbody>
[for sidebyside]
[if-any sidebyside.gap]
<tr>
<th>&hellip;</th><th></th>
<th>&hellip;</th><th></th>
</tr>
[end]
<tr>
[for sidebyside.columns]
<th>[sidebyside.columns.line_number]</th><td[if-any sidebyside.columns.line_number][else] class="vc_idiff_empty"[end]>[for sidebyside.columns.segments][if-any sidebyside.columns.segments.type]<span class="vc_idiff_[sidebyside.columns.segments.type]">[sidebyside.columns.segments.text]</span>[else][sidebyside.columns.segments.text][end][end]</td>
[end]
</tr>
[end]
</tbody>
</table>
[end]
[if-any unified]
<table class="vc_idiff">
<thead>
<tr>
<th>r[left.rev]</th>
<th>r[right.rev]</th>
<th></th>
</tr>
</thead>
<tbody>
[for unified]
[if-any unified.gap]
<tr>
<th>&hellip;</th>
<th>&hellip;</th>
<th></th>
</tr>
[end]
<tr>
<th>[unified.left_number]</th>
<th>[unified.right_number]</th>
<td[if-any unified.type] class="vc_idiff_[unified.type]"[end]>[for unified.segments][if-any unified.segments.type]<span class="vc_idiff_[unified.segments.type]">[unified.segments.text]</span>[else][unified.segments.text][end][end]</td>
</tr>
[end]
</tbody>
</table>
[end]
<hr style="margin-top:1em;" />
<table cellpadding="10" class="auto">
<tr>
<td>
<form method="get" action="[diff_format_action]">
<div>
[for diff_format_hidden_values]<input type="hidden" name="[diff_format_hidden_values.name]" value="[diff_format_hidden_values.value]"/>[end]
<select name="diff_format" onchange="submit()">
<option value="h" [is diff_format "h"]selected="selected"[end]>Colored Diff</option>
<option value="l" [is diff_format "l"]selected="selected"[end]>Long Colored Diff</option>
<option value="f" [is diff_format "f"]selected="selected"[end]>Full Colored Diff</option>
<option value="u" [is diff_format "u"]selected="selected"[end]>Unidiff</option>
<option value="c" [is diff_format "c"]selected="selected"[end]>Context Diff</option>
<option value="s" [is diff_format "s"]selected="selected"[end]>Side by Side</option>
</select>
<input type="submit" value="Show" />
</div>
</form>
</td>
<td>
[if-any raw_diff]
&nbsp;
[else]
<table style="border:solid gray 1px;" class="auto">
<tr>
<td>Legend:<br />
<table cellspacing="0" cellpadding="1">
<tr>
<td style="text-align:center;" class="vc_diff_remove">Removed from v.[left.rev]</td>
<td class="vc_diff_empty">&nbsp;</td>
</tr>
<tr>
<td style="text-align:center;" colspan="2" class="vc_diff_change">changed lines</td>
</tr>
<tr>
<td class="vc_diff_empty">&nbsp;</td>
<td style="text-align:center;" class="vc_diff_add">Added in v.[right.rev]</td>
</tr>
</table>
</td>
</tr>
</table>
[end]
</td>
</tr>
</table>
[include "include/footer.ezt"]

View File

@ -0,0 +1,116 @@
[include "include/dir_header.ezt"]
<table class="vc_list">
<thead>
<tr class="vc_headrow" style="background-image:url([docroot]/images/lines-45gr.gif)">
<th class="vc_header[is sortby "file"]_sort" style="background-image:url([docroot]/images/lines-45g.gif)[end]" colspan="2">
[is sortby "file"]
<a href="[sortby_file_href]#dirlist"><img class="vc_sortarrow" alt="[is sortdir "down"](rev)[end]"
width="13" height="13"
src="[docroot]/images/[is sortdir "up"]up[else]down[end].png" /></a>
[end]
<a href="[sortby_file_href]#dirlist">File</a>
</th>
<th class="vc_header[is sortby "rev"]_sort" style="background-image:url([docroot]/images/lines-45g.gif)[end]">
[is sortby "rev"]
<a href="[sortby_rev_href]#dirlist"><img class="vc_sortarrow" alt="[is sortdir "down"](rev)[end]"
width="13" height="13"
src="[docroot]/images/[is sortdir "up"]up[else]down[end].png" /></a>
[end]
<a href="[sortby_rev_href]#dirlist">Rev.</a>
</th>
<th class="vc_header[is sortby "date"]_sort" style="background-image:url([docroot]/images/lines-45g.gif)[end]">
[is sortby "date"]
<a href="[sortby_date_href]#dirlist"><img class="vc_sortarrow" alt="[is sortdir "down"](rev)[end]"
width="13" height="13"
src="[docroot]/images/[is sortdir "up"]up[else]down[end].png" /></a>
[end]
<a href="[sortby_date_href]#dirlist">Age</a>
</th>
<th class="vc_header[is sortby "author"]_sort" style="background-image:url([docroot]/images/lines-45g.gif)[end]">
[is sortby "author"]
<a href="[sortby_author_href]#dirlist"><img class="vc_sortarrow" alt="[is sortdir "down"](rev)[end]"
width="13" height="13"
src="[docroot]/images/[is sortdir "up"]up[else]down[end].png" /></a>
[end]
<a href="[sortby_author_href]#dirlist">Author</a>
</th>
[is cfg.options.show_logs "1"]
<th class="vc_header[is sortby "log"]_sort" style="background-image:url([docroot]/images/lines-45g.gif)[end]">
[is sortby "log"]
<a href="[sortby_log_href]#dirlist"><img class="vc_sortarrow" alt="[is sortdir "down"](rev)[end]"
width="13" height="13"
src="[docroot]/images/[is sortdir "up"]up[else]down[end].png" /></a>
[end]
<a href="[sortby_log_href]#dirlist">Last log entry</a>
</th>
[end]
</tr>
</thead>
<tbody>
[if-any up_href]
<tr class="vc_row_odd">
<td colspan="2">
<a href="[up_href]"><img src="[docroot]/images/back_small.png" alt="" class="vc_icon" /></a>
<a href="[up_href]">Parent&nbsp;Directory</a>
</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
[is cfg.options.show_logs "1"]
<td>&nbsp;</td>
[end]
</tr>
[end]
[for entries]
<tr class="vc_row_[if-index entries even]even[else]odd[end]"[if-index entries even] style="background-image:url([docroot]/images/lines45.gif)"[end]>
<td[if-any entries.graph_href][else] colspan="2"[end]>
[is entries.pathtype "dir"]
<a name="[entries.anchor]" href="[entries.view_href]" title="View directory contents"><img src="[docroot]/images/dir.png" alt="" class="vc_icon" /></a>
<a name="[entries.anchor]" href="[entries.view_href]" title="View directory contents">
[else]
<a name="[entries.anchor]" href="[entries.log_href]" title="View file revision log"><img src="[docroot]/images/[is entries.state "dead"]broken[else]text[end].png" alt="" class="vc_icon" /></a>
<a name="[entries.anchor]" href="[entries.log_href]" title="View file revision log">
[end]
[entries.name][is entries.pathtype "dir"]/[end]</a>
[is entries.state "dead"](dead)[end]
</td>
[if-any entries.graph_href]
<td style="width:1%"><a href="[entries.graph_href]"
title="View Revision Graph"><img
src="[docroot]/images/cvsgraph_16x16.png"
alt="View Revision Graph" class="vc_icon" />
</a></td>
[end]
[if-any entries.errors]
<td colspan=[is cfg.options.show_logs "1"]4[else]3[end]>
[for entries.errors]<em>[entries.errors]</em>[end]
</td>
[else]
[is entries.pathtype "dir"]
<td>&nbsp;[if-any entries.rev]<a href="[entries.log_href]" title="View directory revision log"><strong>[entries.rev]</strong></a>[end]</td>
[else]
[define rev_href][if-any entries.prefer_markup][entries.view_href][else][if-any entries.download_href][entries.download_href][end][end][end]
<td style="white-space: nowrap;">&nbsp;[if-any entries.rev][if-any rev_href]<a href="[rev_href]" title="[if-any entries.prefer_markup]View[else]Download[end] file contents">[end]<strong>[entries.rev]</strong>[if-any rev_href]</a>[end][end]
[if-any entries.lockinfo]<img src="[docroot]/images/lock.png" alt="locked" class="vc_icon" title="Locked by [entries.lockinfo]" />[end]
</td>
[end]
<td>&nbsp;[entries.ago]</td>
<td>&nbsp;[entries.author]</td>
[is cfg.options.show_logs "1"]
[if-any entries.short_log]
<td>&nbsp;[entries.short_log][is entries.pathtype "dir"][is roottype "cvs"]
<em>(from [entries.log_file]/[entries.log_rev])</em>[end][end]</td>
[else]
<td>&nbsp;</td>
[end]
[end]
[end]
</tr>
[end]
</tbody>
</table>
[include "include/dir_footer.ezt"]

View File

@ -0,0 +1,14 @@
/************************************/
/*** ViewVC Help CSS Stylesheet ***/
/************************************/
/*** Standard Tags ***/
body {
margin: 0.5em;
}
img { border: none; }
table { width: 100%; }
td { vertical-align: top; }
col.menu { width:12em; }

View File

@ -0,0 +1,122 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>ViewVC Help: Directory View</title>
<link rel="stylesheet" href="help.css" type="text/css" />
<link rel="shortcut icon" href="images/favicon.ico" type="image/x-icon" />
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
</head>
<body>
<div><a href="http://viewvc.org/index.html"><img src="images/viewvc-logo.png" alt="ViewVC logotype" /></a></div>
<table>
<col class="menu" />
<col />
<tr><td>
<h3>Help</h3>
<a href="help_rootview.html">General</a><br />
<strong>Directory&nbsp;View</strong><br />
<a href="help_log.html">Log&nbsp;View</a><br />
<a href="help_query.html">Query&nbsp;Database</a><br />
</td><td>
<h1>ViewVC Help: Directory View</h1>
<p>The directory listing view should be a familiar sight to any
computer user. It shows the path of the current directory being viewed
at the top of the page. Below that is a table summarizing the
directory contents, and then comes actual contents, a sortable list of
all files and subdirectories inside the current directory.</p>
<p><a name="summary"></a>The summary table is made up of some or all
of the following rows:</p>
<ul>
<li><a name="summary-files-shown"><strong>Files Shown</strong></a>
- Number of files shown in the directory listing. This might be less
than the actual number of files in the directory if a
<a href="#option-search">regular expression search</a> is in place,
hiding files which don't meet the search criteria. In CVS directory
listings, this row will also have a link to toggle display of
<a href="help_rootview.html#dead-files">dead files</a>, if any are
present.</li>
<li><a name="summary-revision"><strong>Directory
Revision</strong></a> - For Subversion directories only.
Shown as "# of #" where the first number is the most recent
repository revision where the directory (or a path underneath it)
was modified. The second number is just the latest repository
revision. Both numbers are links to
<a href="help_rootview.html#view-rev">revision views</a></li>
<li><a name="summary-sticky-revision-tag"><strong>Sticky
Revision/Tag</strong></a> - shows the current
<a href="help_rootview.html#sticky-revision-tag">sticky revision or
tag</a> and contains form fields to set or clear it.</li>
<li><a name="summary-search"><strong>Current Search</strong></a> -
If a <a href="#option-search">regular expression search</a> is in place,
shows the search string.</li>
<li><a name="summary-query"><strong>Query</strong></a> - Provides
a link to a <a href="help_rootview.html#view-query">query form</a>
for the directory</li>
</ul>
<p><a name="list"></a>The actual directory list is a table with
filenames and directory names in one column and information about the
most recent revisions where each file or directory was modified in the
other columns. Column headers can be clicked to sort the directory
entries in order by a column, and clicked again to reverse the sort
order.</p>
<p>
<!-- If using directory.ezt template -->
File names are links to <a href="help_log.html">log views</a>
showing a list of revisions where a file was modified. Revision
numbers are links to either
<a href="help_rootview.html#view-markup">view</a>
or <a href="help_rootview.html#view-checkout">download</a> a file
(depending on its file type). The links are reversed for directories.
Directory revision numbers are links to <a href="help_log.html">log
views</a>, while directory names are links showing the contents of those
directories.
<!-- If using dir_alt.ezt template -->
<!--
File and directory names are links to retrieve their contents.
File links may be either
<a href="help_rootview.html#view-markup">view</a>
or <a href="help_rootview.html#view-download">download</a> links
depending on the file type. Directory links go to directory
listings. Revision numbers are links to <a href="help_log.html">log
views</a> showing lists of revisions where a file or directory was
modified.
-->
Also, in CVS repositories with the
<a href="help_rootview.html#view-graph">graph view</a> enabled, there
will be small
<img src="images/cvsgraph_16x16.png" width="16" height="16" alt="graph">
icons next to file names which are links to revision graphs.</p>
<p>Depending on how ViewVC is configured, there may be more options
at the bottom of directory pages:</p>
<ul>
<li><a name="option-search"><strong>Regular expression
search</strong></a> - If enabled, will show a form field accepting
a search string (a
<a href="http://doc.python.org/lib/re-syntax.html">python regular
expression</a>). Once submitted, only files that have at least
one occurance of the expression will show up in directory listings.
</li>
<li><a name="option-tarball"><strong>Tarball download</strong></a> -
If enabled, will show a link to download a gzipped tar archive of
the directory contents.</li>
</ul>
</td></tr></table>
<hr />
<address><a href="mailto:users@viewvc.tigris.org">ViewVC Users Mailinglist</a></address>
</body>
</html>

View File

@ -0,0 +1,66 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>ViewVC Help: Log View</title>
<link rel="stylesheet" href="help.css" type="text/css" />
<link rel="shortcut icon" href="images/favicon.ico" type="image/x-icon" />
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
</head>
<body>
<div><a href="http://viewvc.org/index.html"><img src="images/viewvc-logo.png" alt="ViewVC logotype" /></a></div>
<table>
<col class="menu" />
<col />
<tr><td>
<h3>Help</h3>
<a href="help_rootview.html">General</a><br />
<a href="help_dirview.html">Directory&nbsp;View</a><br />
<strong>Log&nbsp;View</strong><br />
<a href="help_query.html">Query&nbsp;Database</a><br />
</td><td>
<h1>ViewVC Help: Log View</h1>
<p>
The log view displays the revision history of the selected source
file or directory. For each revision the following information is
displayed:
<ul>
<li>The revision number. In Subversion repositories, this is a
link to the <a href="help_rootview.html#view-rev">revision
view</a></li>
<li>For files, links to
<a href="help_rootview.html#view-markup">view</a>,
<a href="help_rootview.html#view-checkout">download</a>, and
<a href="help_rootview.html#view-annotate">annotate</a> the
revision. For directories, a link to
<a href="help_dirview.html">list directory contents</a></li>
<li>A link to select the revision for diffs (see below)</li>
<li>The date and age of the change</li>
<li>The author of the modification</li>
<li>The CVS branch (usually <em>MAIN</em>, if not on a branch)</li>
<li>Possibly a list of CVS tags bound to the revision (if any)</li>
<li>The size of the change measured in added and removed lines of
code. (CVS only)</li>
<li>The size of the file in bytes at the time of the revision
(Subversion only)</li>
<li>Links to view diffs to the previous revision or possibly to
an arbitrary selected revision (if any, see above)</li>
<li>If the revision is the result of a copy, the path and revision
copied from</li>
<li>If the revision precedes a copy or rename, the path at the
time of the revision</li>
<li>And last but not least, the commit log message which should tell
about the reason for the change.</li>
</ul>
<p>
At the bottom of the page you will find a form which allows
to request diffs between arbitrary revisions.
</p>
</td></tr></table>
<hr />
<address><a href="mailto:users@viewvc.tigris.org">ViewVC Users Mailinglist</a></address>
</body>
</html>

View File

@ -0,0 +1,62 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>ViewVC Help: Query The Commit Database</title>
<link rel="stylesheet" href="help.css" type="text/css" />
<link rel="shortcut icon" href="images/favicon.ico" type="image/x-icon" />
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
</head>
<body>
<div><a href="http://viewvc.org/index.html"><img src="images/viewvc-logo.png" alt="ViewVC logotype" /></a></div>
<table>
<col class="menu" />
<col />
<tr><td>
<h3>Help:</h3>
<a href="help_rootview.html">General</a><br />
<a href="help_dirview.html">Directory&nbsp;View</a><br />
<a href="help_log.html">Log&nbsp;View</a><br />
<strong>Query&nbsp;Database</strong>
</td><td>
<h1>ViewVC Help: Query The Commit Database</h1>
<p>
Select your parameters for querying the CVS commit database in the
form at the top of the page. You
can search for multiple matches by typing a comma-seperated list
into the text fields. Regular expressions, and wildcards are also
supported. Blank text input fields are treated as wildcards.
</p>
<p>
Any of the text entry fields can take a comma-seperated list of
search arguments. For example, to search for all commits from
authors <em>jpaint</em> and <em>gstein</em>, just type: <code>jpaint,
gstein</code> in the <em>Author</em> input box. If you are searching
for items containing spaces or quotes, you will need to quote your
request. For example, the same search above with quotes is:
<code>"jpaint", "gstein"</code>.
</p>
<p>
Wildcard and regular expression searches are entered in a similar
way to the quoted requests. You must quote any wildcard or
regular expression request, and a command character preceeds the
first quote. The command character <code>l</code>(lowercase L) is for wildcard
searches, and the wildcard character is a percent (<code>%</code>). The
command character for regular expressions is <code>r</code>, and is
passed directly to MySQL, so you'll need to refer to the MySQL
manual for the exact regex syntax. It is very similar to Perl. A
wildard search for all files with a <em>.py</em> extention is:
<code>l"%.py"</code> in the <em>File</em> input box. The same search done
with a regular expression is: <code>r".*\.py"</code>.
</p>
<p>
All search types can be mixed, as long as they are seperated by
commas.
</p>
</td></tr></table>
<hr />
<address><a href="mailto:users@viewvc.tigris.org">ViewVC Users Mailinglist</a></address>
</body>
</html>

View File

@ -0,0 +1,157 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>ViewVC Help: General</title>
<link rel="stylesheet" href="help.css" type="text/css" />
<link rel="shortcut icon" href="images/favicon.ico" type="image/x-icon" />
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
</head>
<body>
<div><a href="http://viewvc.org/index.html"><img src="images/viewvc-logo.png" alt="ViewVC logotype" /></a></div>
<table>
<col class="menu" />
<col />
<tr><td>
<h3>Help</h3>
<strong>General</strong><br />
<a href="help_dirview.html">Directory&nbsp;View</a><br />
<a href="help_log.html">Log&nbsp;View</a><br />
<a href="help_query.html">Query&nbsp;Database</a><br />
</td><td>
<h1>ViewVC Help: General</h1>
<p><em>ViewVC</em> is a WWW interface for CVS and Subversion
repositories. It allows you to browse the files and directories in a
repository while showing you metadata from the repository history: log
messages, modification dates, author names, revision numbers, copy
history, and so on. It provides several different views of repository
data to help you find the information you are looking for:</p>
<ul>
<li><a name="multiple-repositories"><strong>Root Listing
View</strong></a> - Show a list of repositories configured for
display in ViewVC.</li>
<li><a name="view-dir" href="help_dirview.html"><strong>Directory
View</strong></a> - Shows a list of files and subdirectories in a
directory of the repository, along with metadata like author names and
log entries.</li>
<li><a name="view-log" href="help_log.html"><strong>Log
View</strong></a> - Shows a revision by revision list of all the
changes that have made to a file or directory in the repository, with
metadata and links to views of each revision.</li>
<li><a name="view-checkout"><strong>File Download (Checkout
View)</strong></a> - Retrieves the unaltered contents of a file
revision. Browsers may try to display the file, or just save it
to disk. <em>This view is disabled in the default ViewVC
configuration.</em></li>
<li><a name="view-annotate"><a name="view-markup"><strong>File
Contents View</strong></a></a> - Shows the contents of a file at
a particular revision, with revision information at the top of
the page. File revisions which are GIF, PNG, or JPEG images are
displayed inline on the page. Other file types are displayed as
marked up text. The markup may be limited to turning URLs and
email addresses into links, or configured to show colorized
source code. This view can optionally show line-based
annotation data for the file, containing the revision number
where each line was last modified, along with links and other
information. <em>This view is disabled in some ViewVC
configurations.</em></li>
<li><a name="view-diff"><strong>File Diff View</strong></a> - Shows
the changes made between two revisions of a file</li>
<li><a name="view-tarball"><strong>Directory Tarball View</strong> -
Retrieves a gzipped tar archive containing the contents of a
directory.<em>This view is disabled in the default ViewVC
configuration.</em></li>
<li><a name="view-query"><strong>Directory Query View</strong></a> -
Shows information about changes made to all subdirectories and files
under a parent directory, sorted and filtered by criteria you specify.
<em>This view is disabled in the default ViewVC configuration.</em>
</li>
<li><a name="view-rev"><strong>Revision View</strong> - Shows
information about a revision including log message, author, and a list
of changed paths. <em>For Subversion repositories only.</em></li>
<li><a name="view-graph"><strong>Graph View</strong></a> - Shows a
graphical representation of a file's revisions and branches complete
with tag and author names and links to markup and diff pages.
<em>For CVS repositories only, and disabled in the default
configuration.</em></li>
</ul>
<h3><a name="sticky-revision-tag">Sticky Revision and Tag</a></h3>
<p>By default, ViewVC will show the files and directories and revisions
that currently exist in the repository. But it's also possible to browse
the contents of a repository at a point in its past history by choosing
a "sticky tag" (in CVS) or a "sticky revision" (in Subversion) from the
forms at the top of directory and log pages. They're called sticky
because once they're chosen, they stick around when you navigate to
other pages, until you reset them. When they're set, directory and log
pages only show revisions preceding the specified point in history. In
CVS, when a tag refers to a branch or a revision on a branch, only
revisions from the branch history are shown, including branch points and
their preceding revisions.</p>
<h3><a name="dead-files">Dead Files</a></h3>
<p>In CVS directory listings, ViewVC can optionally display dead files.
Dead files are files which used to be in a directory but are currently
deleted, or files which just don't exist in the currently selected
<a href="#sticky-revision-tag">sticky tag</a>. Dead files cannot be
shown in Subversion repositories. The only way to see a deleted file in
a Subversion directory is to navigate to a sticky revision where the
file previously existed.</p>
<h3><a name="artificial-tags">Artificial Tags</a></h3>
<p>In CVS Repositories, ViewVC adds artificial tags <em>HEAD</em> and
<em>MAIN</em> to tag listings and accepts them in place of revision
numbers and real tag names in all URLs. <em>MAIN</em> acts like a branch
tag pointing at the default branch, while <em>HEAD</em> acts like a
revision tag pointing to the latest revision on the default branch. The
default branch is usually just the trunk, but may be set to other
branches inside individual repository files. CVS will always check out
revisions from a file's default branch when no other branch is specified
on the command line.</p>
<h3><a name="more-information">More Information</a></h3>
<p>More information about <em>ViewVC</em> is available from
<a href="http://viewvc.org/">viewvc.org</a>.
See the links below for guides to CVS and Subversion</p>
<h4>Documentation about CVS</h4>
<blockquote>
<p>
<a href="http://cvsbook.red-bean.com/"><em>Open Source
Development with CVS</em></a><br />
<a href="http://www.loria.fr/~molli/cvs/doc/cvs_toc.html">CVS
User's Guide</a><br />
<a href="http://cellworks.washington.edu/pub/docs/cvs/tutorial/cvs_tutorial_1.html">Another CVS tutorial</a><br />
<a href="http://www.csc.calpoly.edu/~dbutler/tutorials/winter96/cvs/">Yet another CVS tutorial (a little old, but nice)</a><br />
<a href="http://www.cs.utah.edu/dept/old/texinfo/cvs/FAQ.txt">An old but very useful FAQ about CVS</a>
</p>
</blockquote>
<h4>Documentation about Subversion</h3>
<blockquote>
<p>
<a href="http://svnbook.red-bean.com/"><em>Version Control with
Subversion</em></a><br />
</p>
</blockquote>
</td></tr></table>
<hr />
<address><a href="mailto:users@viewvc.tigris.org">ViewVC Users Mailinglist</a></address>
</body>
</html>

Binary file not shown.

After

Width:  |  Height:  |  Size: 764 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 792 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 304 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 247 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 755 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 162 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 219 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 240 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 404 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 167 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 295 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1004 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 845 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 73 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 73 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 73 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 73 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 75 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 75 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 467 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 303 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 428 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 366 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 168 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 186 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

View File

@ -0,0 +1,386 @@
/*******************************/
/*** ViewVC CSS Stylesheet ***/
/*******************************/
/*** Standard Tags ***/
html, body {
color: #000000;
margin: 0;
font-family: Segoe UI, Tahoma, Arial, sans-serif;
background-image: url(images/lines-45lr.gif);
}
body { padding: 10px; }
a:link { color: #0000C0; }
a:visited { color: #0000C0; }
a:active { color: #FF0000; }
a:hover { text-decoration: none; }
img { border: none; }
table {
width: 100%;
margin: 0;
border: none;
}
table.auto {
width: auto;
}
table.fixed {
width: 100%;
table-layout: fixed;
}
table.fixed td {
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
tr, td, th { vertical-align: top; }
th { white-space: nowrap; }
form { margin: 0; }
/*** Icons ***/
.vc_icon {
width: 16px;
height: 16px;
border: none;
margin: 0 0 -2px 2px;
}
/*** Navigation Headers ***/
.vc_navheader {
padding: .25em;
border: 1px solid #A09080;
}
.vc_navheader .pathdiv {
padding: 0 3px;
}
.vc_footer {
margin-top: 20px;
background-color: #ebe4d4;
border-width: 1px;
border-style: solid;
border-color: #A09080;
border-collapse: collapse;
}
.vc_footer td {
padding: 2px 8px 2px 6px;
}
/*** Table Headers ***/
.vc_header {
text-align: left;
vertical-align: top;
}
.vc_header_sort {
text-align: left;
background-color: #88ff88;
}
/*** Table & Rows ***/
.vc_list {
border-width: 1px 1px 0 1px;
border-style: solid;
border-color: #A09080;
border-collapse: collapse;
}
.vc_list.auto {
border-width: 1px;
}
.vc_list.auto td {
padding-left: 6px;
padding-right: 8px;
}
.vc_list td {
padding: 2px;
}
.vc_list th {
padding: 1px 5px 2px 5px;
border-width: 0 0 1px 0;
border-style: solid;
border-color: #A09080;
}
.vc_list tbody {
border-width: 0 0 1px 0;
border-style: solid;
border-color: #A09080;
}
.vc_headrow {
background-color: #dddddd;
}
.vc_row_even {
background-color: #ebe4d4;
}
.vc_row_odd {
#background-color: #f0f0f0;
}
.vc_row_even.tr {
background-color: transparent;
}
.vc_row_odd.tr {
background-color: transparent;
}
.vc_row_special {
background-color: #ffff7f;
}
/*** Log messages ***/
.vc_log {
/* unfortunately, white-space: pre-wrap isn't widely supported ... */
white-space: -moz-pre-wrap; /* Mozilla based browsers */
white-space: -pre-wrap; /* Opera 4 - 6 */
white-space: -o-pre-wrap; /* Opera >= 7 */
white-space: pre-wrap; /* CSS3 */
word-wrap: break-word; /* IE 5.5+ */
}
pre.vc_log.nm {
margin: 6px 0 6px 0;
}
.vc_log_header {
background-color: #ebe4d4;
border-width: 1px;
border-style: solid;
border-color: #A09080;
margin: 20px 0 20px 0;
}
/*** Properties Listing ***/
.vc_properties {
margin: 1em 0;
}
.vc_properties h2 {
font-size: 115%;
}
/*** File Content Markup Styles ***/
.vc_summary {
margin-top: 16px;
background-color: #ebe4d4;
border-width: 1px;
border-style: solid;
border-color: #A09080;
padding: 0 4px 0 4px;
}
#vc_file table {
border-width: 0 0 1px 1px;
border-style: solid;
border-color: #A09080;
}
#vc_file td {
border-right-style: solid;
border-right-color: #505050;
text-decoration: none;
font-weight: normal;
font-style: normal;
padding: 1px 5px;
}
.vc_file_line_number {
border-right-width: 1px;
background-color: #eeeeee;
color: #505050;
text-align: right;
}
.vc_file_line_author, .vc_file_line_rev {
border-right-width: 1px;
text-align: right;
}
.vc_file_line_text {
border-right-width: 0px;
background-color: white;
font-family: monospace;
text-align: left;
white-space: pre;
width: 100%;
}
.pygments-c { color: #408080; font-style: italic } /* Comment */
.pygments-err { border: 1px solid #FF0000 } /* Error */
.pygments-k { color: #008000; font-weight: bold } /* Keyword */
.pygments-o { color: #666666 } /* Operator */
.pygments-cm { color: #408080; font-style: italic } /* Comment.Multiline */
.pygments-cp { color: #BC7A00 } /* Comment.Preproc */
.pygments-c1 { color: #408080; font-style: italic } /* Comment.Single */
.pygments-cs { color: #408080; font-style: italic } /* Comment.Special */
.pygments-gd { color: #A00000 } /* Generic.Deleted */
.pygments-ge { font-style: italic } /* Generic.Emph */
.pygments-gr { color: #FF0000 } /* Generic.Error */
.pygments-gh { color: #000080; font-weight: bold } /* Generic.Heading */
.pygments-gi { color: #00A000 } /* Generic.Inserted */
.pygments-go { color: #808080 } /* Generic.Output */
.pygments-gp { color: #000080; font-weight: bold } /* Generic.Prompt */
.pygments-gs { font-weight: bold } /* Generic.Strong */
.pygments-gu { color: #800080; font-weight: bold } /* Generic.Subheading */
.pygments-gt { color: #0040D0 } /* Generic.Traceback */
.pygments-kc { color: #008000; font-weight: bold } /* Keyword.Constant */
.pygments-kd { color: #008000; font-weight: bold } /* Keyword.Declaration */
.pygments-kp { color: #008000 } /* Keyword.Pseudo */
.pygments-kr { color: #008000; font-weight: bold } /* Keyword.Reserved */
.pygments-kt { color: #B00040 } /* Keyword.Type */
.pygments-m { color: #666666 } /* Literal.Number */
.pygments-s { color: #BA2121 } /* Literal.String */
.pygments-na { color: #7D9029 } /* Name.Attribute */
.pygments-nb { color: #008000 } /* Name.Builtin */
.pygments-nc { color: #0000FF; font-weight: bold } /* Name.Class */
.pygments-no { color: #880000 } /* Name.Constant */
.pygments-nd { color: #AA22FF } /* Name.Decorator */
.pygments-ni { color: #999999; font-weight: bold } /* Name.Entity */
.pygments-ne { color: #D2413A; font-weight: bold } /* Name.Exception */
.pygments-nf { color: #0000FF } /* Name.Function */
.pygments-nl { color: #A0A000 } /* Name.Label */
.pygments-nn { color: #0000FF; font-weight: bold } /* Name.Namespace */
.pygments-nt { color: #008000; font-weight: bold } /* Name.Tag */
.pygments-nv { color: #19177C } /* Name.Variable */
.pygments-ow { color: #AA22FF; font-weight: bold } /* Operator.Word */
.pygments-w { color: #bbbbbb } /* Text.Whitespace */
.pygments-mf { color: #666666 } /* Literal.Number.Float */
.pygments-mh { color: #666666 } /* Literal.Number.Hex */
.pygments-mi { color: #666666 } /* Literal.Number.Integer */
.pygments-mo { color: #666666 } /* Literal.Number.Oct */
.pygments-sb { color: #BA2121 } /* Literal.String.Backtick */
.pygments-sc { color: #BA2121 } /* Literal.String.Char */
.pygments-sd { color: #BA2121; font-style: italic } /* Literal.String.Doc */
.pygments-s2 { color: #BA2121 } /* Literal.String.Double */
.pygments-se { color: #BB6622; font-weight: bold } /* Literal.String.Escape */
.pygments-sh { color: #BA2121 } /* Literal.String.Heredoc */
.pygments-si { color: #BB6688; font-weight: bold } /* Literal.String.Interpol */
.pygments-sx { color: #008000 } /* Literal.String.Other */
.pygments-sr { color: #BB6688 } /* Literal.String.Regex */
.pygments-s1 { color: #BA2121 } /* Literal.String.Single */
.pygments-ss { color: #19177C } /* Literal.String.Symbol */
.pygments-bp { color: #008000 } /* Name.Builtin.Pseudo */
.pygments-vc { color: #19177C } /* Name.Variable.Class */
.pygments-vg { color: #19177C } /* Name.Variable.Global */
.pygments-vi { color: #19177C } /* Name.Variable.Instance */
.pygments-il { color: #666666 } /* Literal.Number.Integer.Long */
/*** Diff Styles ***/
.vc_diff_table {
border-collapse: collapse;
border-width: 1px;
border-style: solid;
border-color: gray;
}
.vc_diff_header {
background-color: #ffffff;
}
.vc_diff_header th {
border-width: 0 0 1px 0;
border-style: solid;
border-color: gray;
}
.vc_diff_chunk_header {
background-color: #99cccc;
}
.vc_diff_chunk_extra {
font-size: smaller;
}
.vc_diff_empty {
background-color: #cccccc;
font-family: consolas, dejavu sans mono, monospace;
font-size: smaller;
}
.vc_diff_add {
background-color: #aaffaa;
font-family: consolas, dejavu sans mono, monospace;
font-size: smaller;
}
.vc_diff_remove {
background-color: #ffaaaa;
font-family: consolas, dejavu sans mono, monospace;
font-size: smaller;
}
.vc_diff_change {
background-color: #ffff77;
font-family: consolas, dejavu sans mono, monospace;
font-size: smaller;
}
.vc_diff_change_empty {
background-color: #eeee77;
font-family: consolas, dejavu sans mono, monospace;
font-size: smaller;
}
.vc_diff_nochange {
font-family: consolas, dejavu sans mono, monospace;
font-size: smaller;
}
.vc_diff_line_number {
font-family: consolas, dejavu sans mono, monospace;
padding: 0 8px 0 2px;
font-size: 86%;
}
.vc_raw_diff {
background-color: #cccccc;
font-size: smaller;
}
/*** Intraline Diff Styles ***/
.vc_idiff_add {
background-color: #aaffaa;
}
.vc_idiff_change {
background-color:#ffff77;
}
.vc_idiff_remove {
background-color:#ffaaaa;
}
.vc_idiff_empty {
background-color:#e0e0e0;
}
table.vc_idiff col.content {
width: 50%;
}
table.vc_idiff tbody {
font-family: monospace;
/* unfortunately, white-space: pre-wrap isn't widely supported ... */
white-space: -moz-pre-wrap; /* Mozilla based browsers */
white-space: -pre-wrap; /* Opera 4 - 6 */
white-space: -o-pre-wrap; /* Opera >= 7 */
white-space: pre-wrap; /* CSS3 */
word-wrap: break-word; /* IE 5.5+ */
}
table.vc_idiff tbody th {
background-color:#e0e0e0;
text-align:right;
}
/*** Query Form ***/
.vc_query_form {
border: 1px solid #A09080;
background-color: #ebe4d4;
}
.vc_query_form .finp {
width: 600px;
border: 1px solid #A09080;
}
.vc_query_form .subm {
width: 100px;
}
.inp {
border: 1px solid #A09080;
}
.vc_page_form {
margin: 20px 0 20px 0;
}
.vc_dsplit {
border-width: 0 0 1px 0;
border-style: solid;
border-color: #A09080;
}
.vc_rev_nbut {
margin-bottom: -4px;
}
.qfdate {
border-collapse: collapse;
}
.qfdate td {
padding: 0 8px 0 0;
}

View File

@ -0,0 +1,51 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<!-- ViewVC :: http://www.viewvc.org/ -->
<head>
<title>ViewVC Exception</title>
</head>
<body>
<h3>An Exception Has Occurred</h3>
[if-any msg]
<p>[msg]</p>
[end]
[if-any status]
<h4>HTTP Response Status</h4>
<p><pre>[status]</pre></p>
<hr />
[end]
[if-any msg][else]
<h4>Python Traceback</h4>
<p><pre>
[stacktrace]
</pre></p>
[end]
[# Here follows a bunch of space characters, present to ensure that
our error message is larger than 512 bytes so that IE's "Friendly
Error Message" won't show. For more information, see
http://oreillynet.com/onjava/blog/2002/09/internet_explorer_subverts_err.html]
</body>
</html>

View File

@ -0,0 +1,106 @@
[# setup page definitions]
[define page_title]Annotate of /[where][end]
[define help_href][docroot]/help_rootview.html[end]
[# end]
[include "include/header.ezt" "markup"]
[include "include/file_header.ezt"]
<div class="vc_summary" style="background-image:url([docroot]/images/lines45.gif)">
Revision [if-any revision_href]<a href="[revision_href]"><strong>[rev]</strong></a>[else]<strong>[rev]</strong>[end] -
([is annotation "annotated"]<a href="[view_href]"><strong>hide annotations</strong></a>[else][is annotation "binary"]binary[else]<a href="[annotate_href]"><strong>show annotations</strong></a>[end][end])
[if-any download_href](<a href="[download_href]"><strong>download</strong></a>)[end]
[if-any download_text_href](<a href="[download_text_href]"><strong>as text</strong></a>)[end]
[if-any vendor_branch] <em>(vendor branch)</em>[end]
<br /><em>[if-any date][date][else](unknown date)[end]</em>
[if-any ago]([ago] ago)[end]
by <em>[if-any author][author][else](unknown author)[end]</em>
[if-any orig_path]
<br />Original Path: <a href="[orig_href]"><em>[orig_path]</em></a>
[end]
[if-any branches]
<br />Branch: <strong>[branches]</strong>
[end]
[if-any tags]
<br />CVS Tags: <strong>[tags]</strong>
[end]
[if-any branch_points]
<br />Branch point for: <strong>[branch_points]</strong>
[end]
[is roottype "cvs"]
[if-any changed]
<br />Changes since <strong>[prev]: [changed] lines</strong>
[end]
[end]
[if-any mime_type]
<br />File MIME type: [mime_type]
[end]
[is roottype "svn"][if-any size]
<br />File size: [size] byte(s)
[end][end]
[if-any lockinfo]
<br />Lock status: <img src="[docroot]/images/lock.png" alt="Locked" width="16" height="16" /> [lockinfo]
[end]
[if-any annotation]
[is annotation "binary"]
<br /><strong>Unable to calculate annotation data on binary file contents [if-any download_href](<a href="[download_href]">download</a>)[end].</strong>
[end]
[is annotation "error"]
<br /><strong>Error occurred while calculating annotation data.</strong>
[end]
[end]
[is state "dead"]
<br /><strong><em>FILE REMOVED</em></strong>
[end]
[if-any log]
<pre class="vc_log">[log]</pre>
[end]
</div>
[define last_rev]0[end]
[define rowclass]vc_row_even[end]
[if-any lines]
<div id="vc_file">
<table cellspacing="0" cellpadding="0">
[for lines]
[is lines.rev last_rev]
[else]
[is lines.rev rev]
[define rowclass]vc_row_special[end]
[else]
[is rowclass "vc_row_even"]
[define rowclass]vc_row_odd[end]
[else]
[define rowclass]vc_row_even[end]
[end]
[end]
[end]
<tr class="[rowclass]" id="l[lines.line_number]">
<td class="vc_file_line_number">[lines.line_number]</td>
[is annotation "annotated"]
<td class="vc_file_line_author">[is lines.rev last_rev]&nbsp;[else][lines.author][end]</td>
<td class="vc_file_line_rev">[is lines.rev last_rev]&nbsp;[else][if-any lines.diff_href]<a href="[lines.diff_href]">[end][lines.rev][if-any lines.diff_href]</a>[end][end]</td>
[end]
<td class="vc_file_line_text">[lines.text]</td>
</tr>
[define last_rev][lines.rev][end]
[end]
</table>
</div>
[else]
[if-any image_src_href]
<div id="vc_file_image">
<img src="[image_src_href]" alt="" />
</div>
[end]
[end]
[include "include/props.ezt"]
[include "include/footer.ezt"]

View File

@ -0,0 +1,18 @@
[# setup page definitions]
[define page_title]Graph of /[where][end]
[define help_href][docroot]/help_rootview.html[end]
[# end]
[include "include/header.ezt" "graph"]
[include "include/file_header.ezt"]
<hr />
<div style="text-align:center;">
[imagemap]
<img usemap="#MyMapName"
src="[imagesrc]"
alt="Revisions of [where]" />
</div>
[include "include/footer.ezt"]

View File

@ -0,0 +1,65 @@
<p><a name="diff"></a>
Form below allows you to request diffs between any two revisions of this file.
For each of the two "sides" of the diff,
[if-any tags]
select a symbolic revision name using the selection box, or choose
'Use Text Field' and enter a numeric revision.
[else]
enter a numeric revision.
[end]
</p>
<form method="get" action="[diff_select_action]" id="diff_select">
<table class="vc_list auto" style="background-image:url([docroot]/images/lines45.gif)">
<tr>
<td>
[for diff_select_hidden_values]<input class="inp" type="hidden" name="[diff_select_hidden_values.name]" value="[diff_select_hidden_values.value]"/>[end]
Diffs between
[if-any tags]
<select name="r1">
<option value="text" selected="selected">Use Text Field</option>
[for tags]
<option value="[tags.rev]:[tags.name]">[tags.name]</option>
[end]
</select>
<input class="inp" type="text" size="12" name="tr1"
value="[if-any rev_selected][rev_selected][else][first_revision][end]"
onchange="document.getElementById('diff_select').r1.selectedIndex=0" />
[else]
<input class="inp" type="text" size="12" name="r1"
value="[if-any rev_selected][rev_selected][else][first_revision][end]" />
[end]
and
[if-any tags]
<select name="r2">
<option value="text" selected="selected">Use Text Field</option>
[for tags]
<option value="[tags.rev]:[tags.name]">[tags.name]</option>
[end]
</select>
<input class="inp" type="text" size="12" name="tr2"
value="[last_revision]"
onchange="document.getElementById('diff_select').r2.selectedIndex=0" />
[else]
<input class="inp" type="text" size="12" name="r2" value="[last_revision]" />
[end]
</td>
</tr>
<tr>
<td>
Type of Diff should be a
<select name="diff_format" onchange="submit()" class="inp">
<option value="h" [is diff_format "h"]selected="selected"[end]>Colored Diff</option>
<option value="l" [is diff_format "l"]selected="selected"[end]>Long Colored Diff</option>
<option value="f" [is diff_format "f"]selected="selected"[end]>Full Colored Diff</option>
<option value="u" [is diff_format "u"]selected="selected"[end]>Unidiff</option>
<option value="c" [is diff_format "c"]selected="selected"[end]>Context Diff</option>
<option value="s" [is diff_format "s"]selected="selected"[end]>Side by Side</option>
</select>
<input type="submit" value=" Get Diffs " />
</td>
</tr>
</table>
</form>

View File

@ -0,0 +1,9 @@
[# if you want to disable tarball generation remove the following: ]
[if-any tarball_href]
<p style="margin:0;"><a href="[tarball_href]">Download GNU tarball</a></p>
[end]
[include "props.ezt"]
[include "footer.ezt"]

View File

@ -0,0 +1,92 @@
[# setup page definitions]
[define page_title]Index of /[where][end]
[define help_href][docroot]/help_[if-any where]dir[else]root[end]view.html[end]
[# end]
[include "header.ezt" "directory"]
[if-any where][else]
<!-- you may insert repository access instructions here -->
[end]
<table class="vc_list auto" style="background-image:url([docroot]/images/lines45.gif); border-width: 1px">
<tr>
<td>Files shown:</td><td><strong>[files_shown]</strong>
[is num_dead "0"]
[else]
[if-any attic_showing]
(<a href="[hide_attic_href]">Hide [num_dead] dead files</a>)
[else]
(<a href="[show_attic_href]">Show [num_dead] dead files</a>)
[end]
[end]
</td></tr>
[is roottype "svn"]
<tr>
<td>Directory revision:</td>
<td><a href="[tree_rev_href]" title="Revision [tree_rev]">[tree_rev]</a>[if-any youngest_rev] (of <a href="[youngest_rev_href]" title="Revision [youngest_rev]">[youngest_rev]</a>)[end]</td>
</tr>
[end]
<tr>
<td>Sticky [is roottype "cvs"]Tag[else]Revision[end]:</td>
<td>[include "pathrev_form.ezt"]</td>
</tr>
[if-any search_re_action]
<tr>
<td>Filter files by content:</td>
<td><form method="get" action="[search_re_action]" style="display: inline;">
<div style="display: inline;">
[for search_re_hidden_values]<input type="hidden" name="[search_re_hidden_values.name]" value="[search_re_hidden_values.value]"/>[end]
<input type="text" name="search" value="[search_re]" class="inp" />
<input type="submit" value="Search Regexp" />
</div>
</form>
[if-any search_re]
<form method="get" action="[search_re_action]" style="display: inline;">
<div style="display: inline;">
[for search_re_hidden_values]<input type="hidden" name="[search_re_hidden_values.name]" value="[search_re_hidden_values.value]"/>[end]
<input type="submit" value="Show All Files" />
</div>
</form>
[end]
</td>
</tr>
[end]
[if-any queryform_href]
<tr>
<td>Query:</td>
<td><a href="[queryform_href]">Query revision history</a></td>
</tr>
[end]
</table>
[is picklist_len "0"]
[else]
[is picklist_len "1"]
[else]
<form method="get" action="[dir_paging_action]" class="vc_page_form" name="vc_page_form">
Pages:
[for picklist]
[is picklist.count dir_pagestart]
<strong>[picklist.page]</strong>
[else]
<a href="[dir_paging_action]?dir_pagestart=[picklist.count][for dir_paging_hidden_values]&[dir_paging_hidden_values.name]=[dir_paging_hidden_values.value][end]">[picklist.page]</a>
[end]
[end]
[for dir_paging_hidden_values]<input type="hidden" name="[dir_paging_hidden_values.name]" value="[dir_paging_hidden_values.value]"/>[end]
<input type="submit" value="Go to:" />
<select name="dir_pagestart" onchange="submit()" class="inp">
[for picklist]
<option [is picklist.count dir_pagestart]selected[end] value="[picklist.count]">Page [picklist.page]: [picklist.start] to [picklist.end]</option>
[end]
</select>
</form>
[end]
[end]
<p><a name="dirlist"></a></p>

View File

@ -0,0 +1,16 @@
<p style="margin:0;">
[is pathtype "file"]
<a href="[up_href]"><img src="[docroot]/images/back_small.png" class="vc_icon" alt="Parent Directory" /></a> <a href="[up_href]">Parent Directory</a>
[if-any log_href]
| <a href="[log_href]"><img src="[docroot]/images/log.png" class="vc_icon" alt="Revision Log" /></a> <a href="[log_href]">Revision Log</a>
[end]
[if-any graph_href]
| <a href="[graph_href]"><img src="[docroot]/images/cvsgraph_16x16.png" class="vc_icon" alt="View Revision Graph" /></a> <a href="[graph_href]">Revision Graph</a>
[end]
[is view "diff"]
| <a href="[patch_href]"><img src="[docroot]/images/diff.png" class="vc_icon" alt="View Patch" /></a> <a href="[patch_href]">Patch</a>
[end]
[else]
<a href="[view_href]"><img src="[docroot]/images/dir.png" class="vc_icon" alt="View Directory Listing" /></a> <a href="[view_href]">Directory Listing</a>
[end]
</p>

View File

@ -0,0 +1,15 @@
[# standard footer used by all ViewVC pages ]
<table class="vc_footer" style="background-image:url([docroot]/images/lines45.gif)">
<tr>
<td>Powered by <a href="http://viewvc.tigris.org/">ViewVC [vsn]</a></td>
<td style="text-align: right;">[if-any rss_href]<a href="[rss_href]" title="RSS 2.0 feed"><img src="[docroot]/images/feed-icon-16x16.jpg" class="vc_icon" alt="RSS 2.0 feed" /></a>[else]&nbsp;[end]</td>
</tr>
<tr bgcolor="white">
<td>[if-any cfg.general.address][cfg.general.address][else]&nbsp;[end]</td>
<td style="text-align: right;"><strong><a href="[help_href]">ViewVC Help</a></strong></td>
</tr>
</table>
</body>
</html>

View File

@ -0,0 +1,23 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<!-- ViewVC :: http://www.viewvc.org/ -->
<head>
<title>[if-any rootname][[][rootname]][else]ViewVC[end] [page_title]</title>
<meta name="generator" content="ViewVC [vsn]" />
<link rel="shortcut icon" href="[docroot]/images/favicon.ico" type="image/x-icon" />
<link rel="stylesheet" href="[docroot]/styles.css" type="text/css" />
[if-any rss_href]<link rel="alternate" type="application/rss+xml" title="RSS [[][rootname]][where]" href="[rss_href]" />[end]
</head>
<body>
<div class="vc_navheader" style="background-image:url([docroot]/images/lines45.gif)">
<table><tr>
<td><strong>[if-any roots_href]<a href="[roots_href]"><span class="pathdiv">subversion://</span></a>[else]<span class="pathdiv">subversion://</span>[end][if-any nav_path][for nav_path][if-any nav_path.href]<a href="[nav_path.href]">[end][if-index nav_path first][[][nav_path.name]][else][nav_path.name][end][if-any nav_path.href]</a>[end][if-index nav_path last][else]<span class="pathdiv">/</span>[end][end][end]</strong></td>
<td style="text-align: right;">[if-any username]Logged in as: <strong><a href="[env_user_url]">[username]</a></strong>[else]<a href="?ga_require=1">Log in</a>[end]</td>
</tr></table>
</div>
<div style="float: right; padding: 5px;"><a href="http://www.viewvc.org/" title="ViewVC Home"><img src="[docroot]/images/viewvc-logo.png" alt="ViewVC logotype" width="240" height="70" /></a></div>
<h1>[page_title]</h1>

View File

@ -0,0 +1,10 @@
[include "paging.ezt"]
[is pathtype "file"]
[include "diff_form.ezt"]
[end]
[include "sort.ezt"]
[include "footer.ezt"]

View File

@ -0,0 +1,52 @@
[# setup page definitions]
[define page_title]Log of /[where][end]
[define help_href][docroot]/help_log.html[end]
[# end]
[include "header.ezt" "log"]
[include "file_header.ezt"]
<table class="vc_log_header auto" style="background-image:url([docroot]/images/lines45.gif)">
[if-any default_branch]
<tr>
<td>Default branch:</td>
<td>[for default_branch]<a href="[default_branch.href]">[default_branch.name]</a>[if-index default_branch last][else], [end]
[end]</td>
</tr>
[end]
[is pathtype "file"]
[if-any head_view_href]
<tr>
<td>Links to HEAD:</td>
<td>
(<a href="[head_view_href]">view</a>)
[if-any head_download_href](<a href="[head_download_href]">download</a>)[end]
[if-any head_download_text_href](<a href="[head_download_text_href]">as text</a>)[end]
[if-any head_annotate_href](<a href="[head_annotate_href]">annotate</a>)[end]
</td>
</tr>
[end]
[if-any tag_view_href]
<tr>
<td>Links to [pathrev]:</td>
<td>
(<a href="[tag_view_href]">view</a>)
[if-any tag_download_href](<a href="[tag_download_href]">download</a>)[end]
[if-any tag_download_text_href](<a href="[tag_download_text_href]">as text</a>)[end]
[if-any tag_annotate_href](<a href="[tag_annotate_href]">annotate</a>)[end]
</td>
</tr>
[end]
[end]
<tr>
<td>Sticky [is roottype "cvs"]Tag[else]Revision[end]:</td>
<td>[include "pathrev_form.ezt"]</td>
</tr>
</table>
[include "paging.ezt"]

View File

@ -0,0 +1,28 @@
[is picklist_len "0"]
[else]
[is picklist_len "1"]
[else]
<form method="get" action="[log_paging_action]" class="vc_page_form">
Pages:
[for picklist]
[is picklist.count log_pagestart]
<strong>[picklist.page]</strong>
[else]
<a href="[log_paging_action]?log_pagestart=[picklist.count][for log_paging_hidden_values]&[log_paging_hidden_values.name]=[log_paging_hidden_values.value][end]">[picklist.page]</a>
[end]
[end]
[for log_paging_hidden_values]<input type="hidden" name="[log_paging_hidden_values.name]" value="[log_paging_hidden_values.value]"/>[end]
<input type="submit" value="Go to:">
<select name="log_pagestart" onchange="submit()" class="inp">
[for picklist]
[if-any picklist.more]
<option [is picklist.count log_pagestart]selected[end] value="[picklist.count]">Page [picklist.page]: [picklist.start] ...</option>
[else]
<option [is picklist.count log_pagestart]selected[end] value="[picklist.count]">Page [picklist.page]: [picklist.start] - [picklist.end]</option>
[end]
[end]
</select>
</form>
[end]
[end]

View File

@ -0,0 +1,53 @@
<form method="get" action="[pathrev_action]" style="display: inline">
<div style="display: inline">
[for pathrev_hidden_values]<input type="hidden" name="[pathrev_hidden_values.name]" value="[pathrev_hidden_values.value]"/>[end]
[is roottype "cvs"]
[define pathrev_selected][pathrev][end]
<select name="pathrev" onchange="submit()" class="inp">
<option value=""></option>
[if-any branch_tags]
<optgroup label="Branches">
[for branch_tags]
[is branch_tags pathrev]
<option selected>[branch_tags]</option>
[define pathrev_selected][end]
[else]
<option>[branch_tags]</option>
[end]
[end]
</optgroup>
[end]
<optgroup label="Non-branch tags">
[for plain_tags]
[is plain_tags pathrev]
<option selected>[plain_tags]</option>
[define pathrev_selected][end]
[else]
<option>[plain_tags]</option>
[end]
[end]
</optgroup>
[if-any pathrev_selected]
<option selected>[pathrev_selected]</option>
[end]
</select>
[else]
<input type="text" name="pathrev" value="[pathrev]" size="6" class="inp"/>
[end]
<input type="submit" value="Set" />
</div>
</form>
[if-any pathrev]
<form method="get" action="[pathrev_clear_action]" style="display: inline">
<div style="display: inline">
[for pathrev_clear_hidden_values]<input type="hidden" name="[pathrev_clear_hidden_values.name]" value="[pathrev_clear_hidden_values.value]"/>[end]
[if-any lastrev]
[is pathrev lastrev][else]<input type="submit" value="Set to [lastrev]" />[end]
(<i>Current path doesn't exist after revision <strong>[lastrev]</strong></i>)
[else]
<input type="submit" value="Clear" />
[end]
</div>
</form>
[end]

View File

@ -0,0 +1,26 @@
[if-any properties]
<div class="vc_properties">
<h2>Properties</h2>
<table class="vc_list auto">
<thead>
<tr style="background-image:url([docroot]/images/lines-45gr.gif)">
<th class="vc_header_sort" style="background-image:url([docroot]/images/lines-45g.gif); border-width: 0 1px 1px 0">Name</th>
<th class="vc_header">Value</th>
</tr>
</thead>
<tbody>
[for properties]
<tr class="vc_row_[if-index properties even]even[else]odd[end]"[if-index properties even] style="background-image:url([docroot]/images/lines45.gif)"[end]>
<td><strong>[properties.name]</strong></td>
[if-any properties.undisplayable]
<td><em>Property value is undisplayable.</em></td>
[else]
<td style="white-space: pre;">[properties.value]</td>
[end]
</tr>
[end]
</tbody>
</table>
</div>
[end]

View File

@ -0,0 +1,16 @@
[is roottype "svn"]
[else]
<form method="get" action="[logsort_action]">
<div>
<a name="logsort"></a>
[for logsort_hidden_values]<input type="hidden" name="[logsort_hidden_values.name]" value="[logsort_hidden_values.value]"/>[end]
Sort log by:
<select name="logsort" onchange="submit()" class="inp">
<option value="cvs" [is logsort "cvs"]selected="selected"[end]>Not sorted</option>
<option value="date" [is logsort "date"]selected="selected"[end]>Commit date</option>
<option value="rev" [is logsort "rev"]selected="selected"[end]>Revision</option>
</select>
<input type="submit" value=" Sort " />
</div>
</form>
[end]

View File

@ -0,0 +1,150 @@
[include "include/log_header.ezt"]
[define first_revision][end]
[define last_revision][end]
[for entries]
[if-index entries first][define first_revision][entries.rev][end][end]
[if-index entries last][define last_revision][entries.rev][end][end]
<div>
<hr />
[is entries.state "dead"]
Revision <strong>[entries.rev]</strong>
[else]
<a name="rev[entries.rev]"></a>
[for entries.tag_names]<a name="[entries.tag_names]"></a>
[end]
[for entries.branch_names]<a name="[entries.branch_names]"></a>
[end]
Revision [is roottype "svn"]<a href="[entries.revision_href]"><strong>[entries.rev]</strong></a>[else]<strong>[entries.rev]</strong>[end] -
[if-any entries.view_href]
[is pathtype "file"]
(<a href="[entries.view_href]">view</a>)
[else]
<a href="[entries.view_href]">Directory Listing</a>
[end]
[end]
[if-any entries.download_href](<a href="[entries.download_href]">download</a>)[end]
[if-any entries.download_text_href](<a href="[entries.download_text_href]">as text</a>)[end]
[if-any entries.annotate_href](<a href="[entries.annotate_href]">annotate</a>)[end]
[is pathtype "file"]
[# if you don't want to allow select for diffs then remove this section]
[is entries.rev rev_selected]
- <strong>[[]selected]</strong>
[else]
- <a href="[entries.sel_for_diff_href]">[[]select for diffs]</a>
[end]
[end]
[end]
[if-any entries.vendor_branch]
<em>(vendor branch)</em>
[end]
<br />
[is roottype "svn"]
[if-index entries last]Added[else]Modified[end]
[end]
<em>[if-any entries.date][entries.date][else](unknown date)[end]</em>
[if-any entries.ago]([entries.ago] ago)[end]
by <em>[if-any entries.author][entries.author][else](unknown author)[end]</em>
[if-any entries.orig_path]
<br />Original Path: <a href="[entries.orig_href]"><em>[entries.orig_path]</em></a>
[end]
[if-any entries.branches]
<br />Branch:
[for entries.branches]
<a href="[entries.branches.href]"><strong>[entries.branches.name]</strong></a>[if-index entries.branches last][else],[end]
[end]
[end]
[if-any entries.tags]
<br />CVS Tags:
[for entries.tags]
<a href="[entries.tags.href]"><strong>[entries.tags.name]</strong></a>[if-index entries.tags last][else],[end]
[end]
[end]
[if-any entries.branch_points]
<br />Branch point for:
[for entries.branch_points]
<a href="[entries.branch_points.href]"><strong>[entries.branch_points.name]</strong></a>[if-index entries.branch_points last][else],[end]
[end]
[end]
[if-any entries.prev]
[if-any entries.changed]
[is roottype "cvs"]
<br />Changes since <strong>[entries.prev]: [entries.changed] lines</strong>
[end]
[end]
[end]
[is roottype "svn"]
[if-any entries.size]
<br />File length: [entries.size] byte(s)
[end]
[if-any entries.copy_path]
<br />Copied from: <a href="[entries.copy_href]"><em>[entries.copy_path]</em></a> revision [entries.copy_rev]
[end]
[end]
[if-any entries.lockinfo]
<br />Lock status: <img src="[docroot]/images/lock.png" alt="Locked" width="16" height="16" /> [entries.lockinfo]
[end]
[is entries.state "dead"]
<br /><strong><em>FILE REMOVED</em></strong>
[else]
[is pathtype "file"]
[if-any entries.prev]
<br />Diff to <a href="[entries.diff_to_prev_href]">previous [entries.prev]</a>
[if-any human_readable]
[else]
(<a href="[entries.diff_to_prev_href]&amp;diff_format=h">colored</a>)
[end]
[end]
[is roottype "cvs"]
[if-any entries.branch_point]
, to <a href="[entries.diff_to_branch_href]">branch point [entries.branch_point]</a>
[if-any human_readable]
[else]
(<a href="[entries.diff_to_branch_href]&amp;diff_format=h">colored</a>)
[end]
[end]
[if-any entries.next_main]
, to <a href="[entries.diff_to_main_href]">next main [entries.next_main]</a>
[if-any human_readable]
[else]
(<a href="[entries.diff_to_main_href]&amp;diff_format=h">colored</a>)
[end]
[end]
[end]
[if-any entries.diff_to_sel_href]
[if-any entries.prev], [else]<br />Diff[end]
to <a href="[entries.diff_to_sel_href]">selected [rev_selected]</a>
[if-any human_readable]
[else]
(<a href="[entries.diff_to_sel_href]&amp;diff_format=h">colored</a>)
[end]
[end]
[end]
[end]
<pre class="vc_log">[entries.log]</pre>
</div>
[end]
[include "include/log_footer.ezt"]

View File

@ -0,0 +1,174 @@
[include "include/log_header.ezt"]
<table class="vc_list">
<thead>
<tr style="background-image:url([docroot]/images/lines-45gr.gif)">
<th class="vc_header[is logsort "rev"]_sort[end]" style="width: 5%; white-space: nowrap; padding-right: 20px[is logsort "rev"]; background-image:url([docroot]/images/lines-45g.gif)[end]">Revision</th>
<th class="vc_header">Tasks</th>
[is pathtype "file"]
<th class="vc_header">Diffs</th>
[end]
[is roottype "cvs"]
<th class="vc_header">Branches/<br />Tags</th>
[end]
<th class="vc_header[is logsort "date"]_sort" style="background-image:url([docroot]/images/lines-45g.gif)[end]">Age</th>
<th class="vc_header">Author</th>
</tr>
</thead>
[define first_revision][end]
[define last_revision][end]
[for entries]
[if-index entries first][define first_revision][entries.rev][end][end]
[if-index entries last][define last_revision][entries.rev][end][end]
<tbody class="vc_row_[if-index entries even]even[else]odd[end]"[if-index entries even] style="background-image:url([docroot]/images/lines45.gif)"[end]>
<tr style="vertical-align: top;" class="vc_row_[if-index entries even]even[else]odd[end] tr">
[# Revision column]
<td rowspan="2" style="width: 5%; white-space: nowrap; padding-right: 20px">
[is roottype "svn"]<a href="[entries.revision_href]"><strong>[entries.rev]</strong></a>[else]<strong>[entries.rev]</strong>[end]
<a name="rev[entries.rev]"></a>
</td>
[# Tasks column]
<td>
[if-any entries.view_href]
[is pathtype "file"]
<a href="[entries.view_href]"><strong>View</strong></a> &nbsp;
[else]
<a href="[entries.view_href]"><strong>Directory Listing</strong></a> &nbsp;
[end]
[end]
[if-any entries.download_href]<a href="[entries.download_href]"><strong>Download</strong></a> &nbsp;[end]
[if-any entries.download_text_href]<a href="[entries.download_text_href]"><strong>As text</strong></a> &nbsp;[end]
[if-any entries.annotate_href]<a href="[entries.annotate_href]"><strong>Annotate</strong></a> &nbsp;[end]
[if-any entries.size]
<br /><strong>File length: </strong>[entries.size] byte(s)
[end]
</td>
[is pathtype "file"]
<td style="width: 18%; white-space: nowrap">
[# Diffs column]
[is entries.state "dead"]
<strong><em>FILE REMOVED</em></strong>
[else]
[# if you don't want to allow select for diffs then remove this section]
[is entries.rev rev_selected]
<strong>[[]selected]</strong><br />
[else]
<a href="[entries.sel_for_diff_href]"><strong>[[]select&nbsp;for&nbsp;diffs]</strong></a><br />
[end]
[if-any entries.diff_to_sel_href]
<a href="[entries.diff_to_sel_href]"><strong>Diff&nbsp;to&nbsp;selected&nbsp;[rev_selected]</strong></a>
[if-any human_readable]
[else]
(<a href="[entries.diff_to_sel_href]&amp;diff_format=h"><strong>colored</strong></a>)
[end]<br />
[end]
[if-any entries.prev]
<a href="[entries.diff_to_prev_href]"><strong>Diff&nbsp;to&nbsp;previous&nbsp;[entries.prev]</strong></a>
[if-any human_readable]
[else]
(<a href="[entries.diff_to_prev_href]&amp;diff_format=h"><strong>colored</strong></a>)
[end]<br />
[end]
[end]
</td>
[end]
[is roottype "cvs"]
<td>
[# Branches column]
[if-any entries.vendor_branch]
<em>vendor branch</em><br />
[end]
[if-any entries.branches]
[for entries.branches]
<a href="[entries.branches.href]"><strong>[entries.branches.name]</strong></a><br />
[end]
[end]
[if-any entries.branch_points]
Branch point for:
[for entries.branch_points]
<a href="[entries.branch_points.href]"><strong>[entries.branch_points.name]</strong></a><br />
[end]
[end]
[if-any entries.next_main]
<a href="[entries.diff_to_main_href]"><strong>Diff&nbsp;to&nbsp;next&nbsp;MAIN&nbsp;[entries.next_main]</strong></a>
[if-any human_readable]
[else]
(<a href="[entries.diff_to_main_href]&amp;diff_format=h"><strong>colored</strong></a>)
[end]<br />
[end]
[if-any entries.branch_point]
<a href="[entries.diff_to_branch_href]"><strong>Diff&nbsp;to&nbsp;branch&nbsp;point&nbsp;[entries.branch_point]</strong></a>
[if-any human_readable]
[else]
(<a href="[entries.diff_to_branch_href]&amp;diff_format=h"><strong>colored</strong></a>)
[end]<br />
[end]
[# Tags ]
[if-any entries.tags]
<form method=get action="[pathrev_action]" >
[for pathrev_hidden_values]<input type="hidden" name="[pathrev_hidden_values.name]" value="[pathrev_hidden_values.value]"/>[end]
<select name="pathrev" onChange="submit()">
<option value="" [is pathrev ""]selected[end]>Show all tags</option>
[for entries.tags]
<option [is pathrev entries.tags.name]selected[end]>[entries.tags.name]</option>
[end]
</select>
</form>
[else]&nbsp;
[end]
</td>
[end]
[# Time column]
<td style="width: 25%; white-space: nowrap">
[is roottype "svn"]
[if-index entries last]Added[else]Modified[end]
[end]
[if-any entries.ago][entries.ago] ago<br />[end]
[if-any entries.date]<em>[entries.date]</em>[end]
[is roottype "cvs"]
[if-any entries.prev]
[if-any entries.changed]
<br />Changes since <strong>[entries.prev]: [entries.changed] lines</strong>
[end]
[end]
[end]
</td>
[# Author column]
<td>
[entries.author]
</td>
</tr>
<tr class="vc_row_[if-index entries even]even[else]odd[end] tr">
<td colspan=5>
[if-any entries.lockinfo]
<strong>Lock status</strong>: <img src="[docroot]/images/lock.png" alt="Locked" width="16" height="16" /> [entries.lockinfo]<br />
[end]
[is roottype "svn"]
[if-any entries.orig_path]
<strong>Original Path</strong>: <a href="[entries.orig_href]"><em>[entries.orig_path]</em></a><br />
[end]
[if-any entries.copy_path]
<strong>Copied from: </strong><a href="[entries.copy_href]"><em>[entries.copy_path]</em></a> revision [entries.copy_rev]<br />
[end]
[end]
<strong>Log: </strong><pre class="vc_log">[entries.log]</pre>
</td>
</tr>
</tbody>
[end]
</table>
[include "include/log_footer.ezt"]

View File

@ -0,0 +1,254 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en" style="background-image:url([docroot]/images/lines-45lr.gif)">
<!-- ViewVC :: http://www.viewvc.org/ -->
<head>
<title>Checkin Database Query</title>
<link rel="stylesheet" href="[docroot]/styles.css" type="text/css" />
</head>
<body>
[# setup page definitions]
[define help_href][docroot]/help_query.html[end]
[# end]
<p>
Select your parameters for querying the CVS commit database. You
can search for multiple matches by typing a comma-seperated list
into the text fields. Regular expressions, and wildcards are also
supported. Blank text input fields are treated as wildcards.
</p>
<p>
Any of the text entry fields can take a comma-seperated list of
search arguments. For example, to search for all commits from
authors <em>jpaint</em> and <em>gstein</em>, just type: <strong>jpaint,
gstein</strong> in the <em>Author</em> input box. If you are searching
for items containing spaces or quotes, you will need to quote your
request. For example, the same search above with quotes is:
<strong>"jpaint", "gstein"</strong>.
</p>
<p>
Wildcard and regular expression searches are entered in a similar
way to the quoted requests. You must quote any wildcard or
regular expression request, and a command charactor preceeds the
first quote. The command charactor <strong>l</strong> is for wildcard
searches, and the wildcard charactor is a percent (<strong>%</strong>). The
command charactor for regular expressions is <strong>r</strong>, and is
passed directly to MySQL, so you'll need to refer to the MySQL
manual for the exact regex syntax. It is very similar to Perl. A
wildard search for all files with a <em>.py</em> extention is:
<strong>l"%.py"</strong> in the <em>File</em> input box. The same search done
with a regular expression is: <strong>r".*\.py"</strong>.
</p>
<p>
All search types can be mixed, as long as they are seperated by
commas.
</p>
<form method="get" action="">
<div class="vc_query_form" style="background-image:url([docroot]/images/lines45.gif)">
<table cellspacing="0" cellpadding="2" class="auto">
<tr>
<td>
<table>
<tr>
<td style="vertical-align:top;">
<table>
<tr>
<td align="right">Search full-text:</td>
<td>
<input type="text" name="textquery" size="40" value="[textquery]" class="finp" />
</td>
</tr>
<tr>
<td align="right">Repository:</td>
<td>
<select name="repository" class="finp">
<option value="">- any -</option>
[for repositories]
<option value="[repositories]"[is repositories repository] selected="selected"[end]>[repositories]</option>
[end]
</select>
</td>
</tr>
<tr>
<td align="right">Branch:</td>
<td>
<input type="text" name="branch" size="40" value="[branch]" class="finp" />
</td>
</tr>
<tr>
<td align="right">Directory:</td>
<td>
<input type="text" name="directory" size="40" value="[directory]" class="finp" />
</td>
</tr>
<tr>
<td align="right">File:</td>
<td>
<input type="text" name="file" size="40" value="[file]" class="finp" />
</td>
</tr>
<tr>
<td align="right">Author:</td>
<td>
<input type="text" name="who" size="40" value="[who]" class="finp" />
</td>
</tr>
</table>
</td>
<td style="vertical-align:top;">
<table>
<tr>
<td align="left">Sort By:</td>
<td>
<select name="sortby" class="inp">
<option value="relevance" [is sortby "relevance"]selected="selected"[end]>Relevance & Date</option>
<option value="date" [is sortby "date"]selected="selected"[end]>Date</option>
<option value="author" [is sortby "author"]selected="selected"[end]>Author</option>
<option value="file" [is sortby "file"]selected="selected"[end]>File</option>
</select>
</td>
</tr>
<tr>
<td colspan="2">
<table class="qfdate">
<tr>
<td colspan="2">Date:</td>
</tr>
<tr>
<td><input type="radio" name="date" value="hours"
[is date "hours"]checked="checked"[end] /></td>
<td>In the last
<input type="text" name="hours" value="[hours]" size="4" class="inp" /> hours
</td>
</tr>
<tr>
<td><input type="radio" name="date" value="day"
[is date "day"]checked="checked"[end] /></td>
<td>In the last day</td>
</tr>
<tr>
<td><input type="radio" name="date" value="week"
[is date "week"]checked="checked"[end] /></td>
<td>In the last week</td>
</tr>
<tr>
<td><input type="radio" name="date" value="month"
[is date "month"]checked="checked"[end] /></td>
<td>In the last month</td>
</tr>
<tr>
<td><input type="radio" name="date" value="all"
[is date "all"]checked="checked"[end] /></td>
<td>Since the beginning of time</td>
</tr>
</table>
</td>
</tr>
</table>
</td>
</tr>
</table>
</td>
<td>
<input type="submit" value="Search" />
</td>
</tr>
</table>
</div>
</form>
[is query "skipped"]
[else]
<p><strong>[num_commits]</strong> matches found.</p>
[if-any commits]
<table cellspacing="0" cellpadding="2">
<thead>
<tr class="vc_header">
<th>Revision</th>
<th>File</th>
<th>Branch</th>
<th>+/-</th>
<th>Date</th>
<th>Author</th>
[# uncommment, if you want a separate Description column: (also see below)
<th>Description</th>
]
</tr>
</thead>
[for commits]
<tbody>
[for commits.files]
<tr class="vc_row_[if-index commits even]even[else]odd[end]">
<td style="vertical-align:top;">
[if-any commits.files.rev][commits.files.rev][else]&nbsp;[end]
</td>
<td style="vertical-align:top;">[commits.files.link]</td>
<td style="vertical-align:top;">
[if-any commits.files.branch][commits.files.branch][else]&nbsp;[end]
</td>
<td style="vertical-align:top;">
[is commits.files.type "Add"]<ins>[end]
[is commits.files.type "Change"]<a href="[commits.files.difflink]">[end]
[is commits.files.type "Remove"]<del>[end]
[commits.files.plus]/[commits.files.minus]
[is commits.files.type "Add"]</ins>[end]
[is commits.files.type "Change"]</a>[end]
[is commits.files.type "Remove"]</del>[end]
</td>
<td style="vertical-align:top;">
[if-any commits.files.date][commits.files.date][else]&nbsp;[end]
</td>
<td style="vertical-align:top;">
[if-any commits.files.author][commits.files.author][else]&nbsp;[end]
</td>
[# uncommment, if you want a separate Description column:
{if-index commits.files first{
<td style="vertical-align:top;" rowspan="{commits.num_files}">
{commits.log}
</td>
{end}
(substitute brackets for the braces)
]
</tr>
[# and also take the following out in the "Description column"-case:]
[if-index commits.files last]
<tr class="vc_row_[if-index commits even]even[else]odd[end]">
<td>&nbsp;</td>
<td colspan="2"><strong>Log:</strong><br />
<pre class="vc_log">[commits.log]</pre></td>
<td colspan="3">[commits.plus]/[commits.minus]</td>
</tr>
[end]
[# ---]
[end]
</tbody>
[end]
<tr class="vc_header">
<th style="text-align:left;vertical-align:top;">&nbsp;</th>
<th style="text-align:left;vertical-align:top;">&nbsp;</th>
<th style="text-align:left;vertical-align:top;">&nbsp;</th>
<th style="text-align:left;vertical-align:top;">&nbsp;</th>
<th style="text-align:left;vertical-align:top;">&nbsp;</th>
<th style="text-align:left;vertical-align:top;">&nbsp;</th>
[# uncommment, if you want a separate Description column:
<th style="text-align:left;vertical-align:top;">&nbsp;</th>
]
</tr>
</table>
[end]
[end]
[include "include/footer.ezt"]

View File

@ -0,0 +1,258 @@
[# setup page definitions]
[define page_title]Query on /[where][end]
[define help_href][docroot]/help_rootview.html[end]
[# end]
[include "include/header.ezt" "query"]
<p><a href="[dir_href]"><img src="[docroot]/images/dir.png" class="vc_icon" alt="Directory" /></a>
<a href="[dir_href]">Browse Directory</a></p>
<form action="[query_action]" method="get">
<div class="vc_query_form" style="background-image:url([docroot]/images/lines45.gif)">
[for query_hidden_values]<input type="hidden" name="[query_hidden_values.name]" value="[query_hidden_values.value]"/>[end]
<table cellspacing="0" cellpadding="5" class="auto">
<tr>
<th style="text-align:right;vertical-align:top;">Repository:</th>
<td>
<input type="text" name="repos" value="[repos]" class="finp" /> &nbsp; <b>Repository type:</b> &nbsp;
<select name="repos_type" class="inp">
<option value="">Any</option>
<option value="cvs" [is repos_type "cvs"]selected[end]>CVS</option>
<option value="svn" [is repos_type "svn"]selected[end]>Subversion</option>
</select>
<br />
<label for="repos_match_exact">
<input type="radio" name="repos_match" id="repos_match_exact"
value="exact" [is repos_match "exact"]checked="checked"[end] />
Exact match
</label>
<label for="repos_match_glob">
<input type="radio" name="repos_match" id="repos_match_glob"
value="glob" [is repos_match "glob"]checked="checked"[end] />
Glob pattern match
</label>
<label for="repos_match_regex">
<input type="radio" name="repos_match" id="repos_match_regex"
value="regex" [is repos_match "regex"]checked="checked"[end] />
Regex match
</label>
<label for="repos_match_notregex">
<input type="radio" name="repos_match" id="repos_match_notregex"
value="notregex" [is repos_match "notregex"]checked="checked"[end] />
Regex doesn't match
</label>
</td>
</tr>
[is roottype "cvs"]
[# For subversion, the branch field is not used ]
<tr>
<th style="text-align:right;vertical-align:top;">Branch:</th>
<td>
<input type="text" name="branch" value="[branch]" class="finp" /><br />
<label for="branch_match_exact">
<input type="radio" name="branch_match" id="branch_match_exact"
value="exact" [is branch_match "exact"]checked="checked"[end] />
Exact match
</label>
<label for="branch_match_glob">
<input type="radio" name="branch_match" id="branch_match_glob"
value="glob" [is branch_match "glob"]checked="checked"[end] />
Glob pattern match
</label>
<label for="branch_match_regex">
<input type="radio" name="branch_match" id="branch_match_regex"
value="regex" [is branch_match "regex"]checked="checked"[end] />
Regex match
</label>
<label for="branch_match_notregex">
<input type="radio" name="branch_match" id="branch_match_notregex"
value="notregex" [is branch_match "notregex"]checked="checked"[end] />
Regex doesn't match
</label>
</td>
</tr>
[end]
<tr>
<th style="text-align:right;vertical-align:top;">Subdirectory:</th>
<td>
<input type="text" name="dir" value="[dir]" class="finp" /><br />
(you can list multiple directories separated by commas)
</td>
</tr>
<tr>
<th style="text-align:right;vertical-align:top;">File:</th>
<td>
<input type="text" name="file" value="[file]" class="finp" /><br />
<label for="file_match_exact">
<input type="radio" name="file_match" id="file_match_exact"
value="exact" [is file_match "exact"]checked="checked"[end] />
Exact match
</label>
<label for="file_match_glob">
<input type="radio" name="file_match" id="file_match_glob"
value="glob" [is file_match "glob"]checked="checked"[end] />
Glob pattern match
</label>
<label for="file_match_regex">
<input type="radio" name="file_match" id="file_match_regex"
value="regex" [is file_match "regex"]checked="checked"[end] />
Regex match
</label>
<label for="file_match_notregex">
<input type="radio" name="file_match" id="file_match_notregex"
value="notregex" [is file_match "notregex"]checked="checked"[end] />
Regex doesn't match
</label>
</td>
</tr>
<tr>
<th style="text-align:right;vertical-align:top;">Revision number:</th>
<td>
<input type="text" name="query_revision" value="[query_revision]" class="finp" /><br />
(you can list multiple revision numbers separated by commas)
</td>
</tr>
<tr>
<th style="text-align:right;vertical-align:top;">Who:</th>
<td>
<input type="text" name="who" value="[who]" class="finp" /><br />
<label for="who_match_exact">
<input type="radio" name="who_match" id="who_match_exact"
value="exact" [is who_match "exact"]checked="checked"[end] />
Exact match
</label>
<label for="who_match_glob">
<input type="radio" name="who_match" id="who_match_glob"
value="glob" [is who_match "glob"]checked="checked"[end] />
Glob pattern match
</label>
<label for="who_match_regex">
<input type="radio" name="who_match" id="who_match_regex"
value="regex" [is who_match "regex"]checked="checked"[end] />
Regex match
</label>
<label for="who_match_notregex">
<input type="radio" name="who_match" id="who_match_notregex"
value="notregex" [is who_match "notregex"]checked="checked"[end] />
Regex doesn't match
</label>
</td>
</tr>
<tr>
<th style="text-align:right;vertical-align:top;">Comment:</th>
<td>
<input type="text" name="comment" value="[comment]" class="finp" /><br />
<label for="comment_match_exact">
<input type="radio" name="comment_match" id="comment_match_fulltext"
value="fulltext" [is comment_match "fulltext"]checked=""[end] />
Search full-text
</label>
<label for="comment_match_exact">
<input type="radio" name="comment_match" id="comment_match_exact"
value="exact" [is comment_match "exact"]checked=""[end] />
Exact match
</label>
<label for="comment_match_glob">
<input type="radio" name="comment_match" id="comment_match_glob"
value="glob" [is comment_match "glob"]checked=""[end] />
Glob pattern match
</label>
<label for="comment_match_regex">
<input type="radio" name="comment_match" id="comment_match_regex"
value="regex" [is comment_match "regex"]checked=""[end] />
Regex match
</label>
<label for="comment_match_notregex">
<input type="radio" name="comment_match" id="comment_match_notregex"
value="notregex" [is comment_match "notregex"]checked=""[end] />
Regex doesn't match
</label>
</td>
</tr>
[if-any enable_search_content]
<tr>
<th style="text-align:right;vertical-align:top;">Search content:</th>
<td><input type="text" name="search_content" value="[search_content]" class="finp" /></td>
</tr>
[end]
<tr>
<th style="text-align:right;vertical-align:top;">Sort By:</th>
<td>
<select name="querysort" class="inp">
<option value="date" [is querysort "date"]selected="selected"[end]>Date</option>
<option value="date_rev" [is querysort "date_rev"]selected="selected"[end]>Date (oldest first)</option>
<option value="author" [is querysort "author"]selected="selected"[end]>Author</option>
<option value="file" [is querysort "file"]selected="selected"[end]>File</option>
<option value="relevance" [is querysort "relevance"]selected="selected"[end]>Relevance</option>
</select>
</td>
</tr>
<tr>
<th style="text-align:right;vertical-align:top;">Date:</th>
<td>
<table cellspacing="0" cellpadding="0">
<tr>
<td><input type="radio" name="date" id="date_hours"
value="hours" [is date "hours"]checked="checked"[end] /></td>
<td>
<label for="date_hours">In the last</label>
<input type="text" name="hours" value="[hours]" size="4" class="inp" />
hours
</td>
</tr>
<tr>
<td><input type="radio" name="date" id="date_day"
value="day" [is date "day"]checked="checked"[end] /></td>
<td><label for="date_day">In the last day</label></td>
</tr>
<tr>
<td><input type="radio" name="date" id="date_week"
value="week" [is date "week"]checked="checked"[end] /></td>
<td><label for="date_week">In the last week</label></td>
</tr>
<tr>
<td><input type="radio" name="date" id="date_month"
value="month" [is date "month"]checked="checked"[end] /></td>
<td><label for="date_month">In the last month</label></td>
</tr>
<tr>
<td><input type="radio" name="date" id="date_all"
value="all" [is date "all"]checked="checked"[end] /></td>
<td><label for="date_all">Since the beginning of time</label></td>
</tr>
<tr>
<td><input type="radio" name="date" id="date_explicit"
value="explicit" [is date "explicit"]checked="checked"[end] /></td>
<td>
<label for="date_explicit">Between</label>
<input type="text" name="mindate" value="[mindate]" class="inp" size="20" />
and
<input type="text" name="maxdate" value="[maxdate]" class="inp" size="20" />
<br />
(use the form <strong>yyyy-mm-dd hh:mm:ss</strong>)
</td>
</tr>
</table>
</td>
</tr>
<tr>
<th style="text-align:right;vertical-align:top;">Limit:</th>
<td>
Show at most
<input type="text" name="limit_changes" value="[limit_changes]" class="inp" size="5" />
changed files per commit.<br />
(use 0 to show all files)
</td>
</tr>
<tr>
<td></td>
<td><input type="submit" value="Search" class="subm" /></td>
</tr>
</table>
</div>
</form>
[include "include/footer.ezt"]

View File

@ -0,0 +1,94 @@
[# setup page definitions]
[define page_title]Query results on /[where][end]
[define help_href][docroot]/help_rootview.html[end]
[# end]
[include "include/header.ezt"]
<p><strong>[english_query]</strong></p>
[# <!-- {sql} --> ]
<p><a href="[queryform_href]">Modify query</a></p>
<p><a href="[backout_href]">Show commands which could be used to back out these changes</a></p>
<p>
<a href="[patch_href]">Show a patch built from these changes</a>
[if-any patch_unsecure]<br /><b>CAUTION: selected changes are not contiguous, patch may include differences from other commits.</b>[end]
</p>
<p><strong>+[plus_count]/-[minus_count]</strong> changed lines total.</p>
[if-any commits]
<table class="vc_list">
<thead>
<tr style="background-image:url([docroot]/images/lines-45gr.gif)">
<th class="vc_header">Revision</th>
<th class="vc_header[is querysort "file"]_sort" style="background-image:url([docroot]/images/lines-45g.gif)[end]">File</th>
[if-any show_branch]
<th class="vc_header">Branch</th>
[end]
<th class="vc_header">+/-</th>
<th class="vc_header[is querysort "date"]_sort" style="background-image:url([docroot]/images/lines-45g.gif)[end]">Date</th>
<th class="vc_header[is querysort "author"]_sort" style="background-image:url([docroot]/images/lines-45g.gif)[end]">Author</th>
[# uncommment, if you want a separate Description column: (also see below)
<th class="vc_header">Description</th>
]
</tr>
</thead>
[for commits]
<tbody class="vc_row_[if-index commits even]even[else]odd[end]"[if-index commits even] style="background-image:url([docroot]/images/lines45.gif)"[end]>
[for commits.files]
<tr class="vc_row_[if-index commits even]even[else]odd[end] tr">
<td style="vertical-align: top;">
[define rev_href][if-any commits.files.prefer_markup][commits.files.view_href][else][if-any commits.files.download_href][commits.files.download_href][end][end][end]
[if-any commits.files.rev][if-any rev_href]<a href="[rev_href]">[end][commits.files.rev][if-any rev_href]</a>[end][else]&nbsp;[end]
</td>
<td style="vertical-align: top;">
<a href="[commits.files.dir_href]">[commits.files.dir]/</a>
<a href="[commits.files.log_href]">[commits.files.file]</a>
[if-any commits.files.snippet]
<div class="snippet">[commits.files.snippet]</div>
[end]
</td>
[if-any show_branch]
<td style="vertical-align: top;">
[if-any commits.files.branch][commits.files.branch][else]&nbsp;[end]
</td>
[end]
<td style="vertical-align: top;">
[# only show a diff link for changes ]
[is commits.files.type "Add"]<ins>[end]
[if-any commits.files.diff_href]<a href="[commits.files.diff_href]">[end]
[is commits.files.type "Remove"]<del>[end]
[commits.files.plus]/[commits.files.minus]
[is commits.files.type "Add"]</ins>[end]
[is commits.files.type "Change"]</a>[end]
[is commits.files.type "Remove"]</del>[end]
</td>
<td style="vertical-align: top;">
[if-any commits.files.date][commits.files.date][else]&nbsp;[end]
</td>
<td style="vertical-align: top;">
[if-any commits.files.author][commits.files.author][else]&nbsp;[end]
</td>
</tr>
[end]
[if-any commits.limited_files]
<tr class="vc_row_[if-index commits even]even[else]odd[end] tr">
<td>&nbsp;</td>
<td colspan="5">
<strong><em><small>Only first [commits.num_files] files shown.
<a href="[limit_changes_href]">Show all files</a> or
<a href="[queryform_href]">adjust limit</a>.</small></em></strong>
</tr>
[end]
<tr class="vc_row_[if-index commits even]even[else]odd[end] tr">
<td>&nbsp;</td>
<td colspan="1"><strong>Log:</strong><br />
<pre class="vc_log">[commits.log]</pre></td>
<td colspan="4">[commits.plus]/[commits.minus]</td>
</tr>
[end]
</tbody>
</table>
[end]
[include "include/footer.ezt"]

View File

@ -0,0 +1,92 @@
[# setup page definitions]
[define page_title]Revision [rev][end]
[define help_href][docroot]/help_rootview.html[end]
[# end]
[include "include/header.ezt" "revision"]
<form method="get" action="[jump_rev_action]">
<table class="vc_list auto" style="background-image:url([docroot]/images/lines45.gif)">
<tr align="left">
<td>Jump to revision:</th>
<td>
[for jump_rev_hidden_values]<input type="hidden" name="[jump_rev_hidden_values.name]" value="[jump_rev_hidden_values.value]"/>[end]
[if-any prev_href] <a href="[prev_href]" title="Previous Revision"><img src="[docroot]/images/back.png" alt="Previous" class="vc_rev_nbut" /></a>[end]
<input type="text" name="revision" value="[rev]" class="inp" style="width: 100px" />
<input type="submit" value="Go" />
[if-any next_href] <a href="[next_href]" title="Next Revision"><img src="[docroot]/images/forward.png" alt="Next" class="vc_rev_nbut" /></a>[end]
</td>
</tr>
<tr align="left">
<td>Author:</th>
<td>[if-any author][author][else]<em>(unknown author)</em>[end]</td>
</tr>
<tr align="left">
<td>Date:</th>
<td>[if-any date][date][else]<em>(unknown date)</em>[end]
[if-any ago]<em>([ago] ago)</em>[end]</td>
</tr>
<tr align="left">
<td>Log Message:</th>
<td><pre class="vc_log nm">[log]</pre></td>
</tr>
</table>
</form>
<p><strong>Changed paths:</strong></p>
[if-any more_changes]
<div>
Only [limit_changes] changes shown,
<a href="[more_changes_href]">display [more_changes] more changes...</a>
</div>
[end]
[if-any first_changes]
<div><a href="[first_changes_href]">Show only first [first_changes] changes...</div>
[end]
<table class="vc_list">
<thead>
<tr align="left" style="background-image:url([docroot]/images/lines-45gr.gif)">
<th class="vc_header_sort" style="background-image:url([docroot]/images/lines-45g.gif)">Path</th>
<th class="vc_header">Details</th>
</tr>
</thead>
<tbody>
[if-any changes]
[for changes]
<tr class="vc_row_[if-index changes even]even[else]odd[end]"[if-index changes even] style="background-image:url([docroot]/images/lines45.gif)"[end]>
<td>
[if-any changes.view_href]
[is changes.pathtype "dir"]
<a href="[changes.view_href]" title="View Directory Contents"><img src="[docroot]/images/dir.png" class="vc_icon" alt="Directory" /></a>
<a href="[changes.view_href]" title="View Directory Contents">[changes.path]/</a>
[else]
<a href="[changes.view_href]" title="View File Contents"><img src="[docroot]/images/text.png" class="vc_icon" alt="Directory" /></a>
<a href="[changes.view_href]" title="View File Contents">[changes.path]</a>
[end]
[else]
[is changes.pathtype "dir"]
<img src="[docroot]/images/dir.png" class="vc_icon" alt="Directory" />
[changes.path]/
[else]
<img src="[docroot]/images/text.png" class="vc_icon" alt="Directory" />
[changes.path]
[end]
[end]
[if-any changes.is_copy]<br /><em>(Copied from [changes.copy_path], r[changes.copy_rev])</em>[end]
</td>
<td>[if-any changes.log_href]<a href="[changes.log_href]" title="View Log">[end][changes.action][if-any changes.log_href]</a>[end]
[if-any changes.text_mods], [if-any changes.diff_href]<a href="[changes.diff_href]" title="View Diff">[end]text changed[if-any changes.diff_href]</a>[end][end]
[if-any changes.prop_mods], props changed[end]
</td>
</tr>
[end]
[else]
<tr><td colspan="5">No changed paths.</td></tr>
[end]
</tbody>
</table>
[include "include/footer.ezt"]

View File

@ -0,0 +1,32 @@
[# setup page definitions]
[define page_title]Repository Listing[end]
[define help_href][docroot]/help_rootview.html[end]
[# end]
[include "include/header.ezt" "directory"]
[if-any queryform_href]
<p><a href="[queryform_href]">Query revision history</a></p>
[end]
<table cellspacing="0" class="vc_list">
<thead>
<tr>
<th class="vc_header_sort" style="background-image:url([docroot]/images/lines-45g.gif)">Name</th>
</tr>
</thead>
<tbody>
[for roots]
<tr class="vc_row_[if-index roots even]even[else]odd[end]"[if-index roots even] style="background-image:url([docroot]/images/lines45.gif)"[end]>
<td>
<a href="[roots.href]"><img src="[docroot]/images/dir.png" alt="" class="vc_icon" /></a>
<a href="[roots.href]">[roots.name]</a>
</td>
</tr>
[end]
</tbody>
</table>
[include "include/footer.ezt"]

View File

@ -0,0 +1,53 @@
<?xml version="1.0"?>
<rss version="2.0">
<channel>
<link>[rss_link_href]</link>
<title>[rootname] checkins[if-any where] (in [where])[end]</title>
<description>[is roottype "svn"]Subversion[else]CVS[end] commits to the[if-any where] [where] directory of the[end] [rootname] repository</description>
[for commits]
<item>
<title>[if-any commits.rev][commits.rev]: [end][[commits.author]] [commits.short_log]</title>
[if-any commits.rss_url]<link>[commits.rss_url]</link>[end]
<author>[commits.author]</author>
<pubDate>[if-any commits.rss_date][commits.rss_date][else](unknown date)[end]</pubDate>
<description>
[format "xml"]
&lt;pre&gt;[commits.log]&lt;/pre&gt;
&lt;table&gt;
[for commits.files]
&lt;tr&gt;
&lt;td style=&quot;vertical-align: top;&quot;&gt;
[define rev_href][if-any commits.files.prefer_markup][commits.files.view_href][else][if-any commits.files.download_href][commits.files.download_href][end][end][end]
[if-any commits.files.rev][if-any rev_href]&lt;a href=&quot;[rev_href]&quot;&gt;[end][commits.files.rev][if-any rev_href]&lt;/a&gt;[end][else]&amp;nbsp;[end]
&lt;/td&gt;
&lt;td style=&quot;vertical-align: top;&quot;&gt;
&lt;a href=&quot;[commits.files.dir_href]&quot;&gt;[commits.files.dir]/&lt;/a&gt;
&lt;a href=&quot;[commits.files.log_href]&quot;&gt;[commits.files.file]&lt;/a&gt;
&lt;/td&gt;
&lt;td style=&quot;vertical-align: top;&quot;&gt;
[is commits.files.type "Add"]&lt;ins&gt;[end]
[is commits.files.type "Change"]&lt;a href=&quot;[commits.files.diff_href]&quot;&gt;[end]
[is commits.files.type "Remove"]&lt;del&gt;[end]
[commits.files.plus]/[commits.files.minus]
[is commits.files.type "Add"]&lt;/ins&gt;[end]
[is commits.files.type "Change"]&lt;/a&gt;[end]
[is commits.files.type "Remove"]&lt;/del&gt;[end]
&lt;/td&gt;
&lt;/tr&gt;
[end]
[if-any commits.limited_files]
&lt;tr class=&quot;vc_row_[if-index commits even]even[else]odd[end]&quot;&gt;
&lt;td&gt;&amp;nbsp;&lt;/td&gt;
&lt;td colspan=&quot;5&quot;&gt;
&lt;strong&gt;&lt;em&gt;&lt;small&gt;Only first [commits.num_files] files shown.
&lt;a href=&quot;[limit_changes_href]&quot;&gt;Show all files&lt;/a&gt; or
&lt;a href=&quot;[queryform_href]&quot;&gt;adjust limit&lt;/a&gt;.&lt;/small&gt;&lt;/em&gt;&lt;/strong&gt;
&lt;/tr&gt;
[end]
&lt;/table&gt;
[end]
</description>
</item>
[end]
</channel>
</rss>