~loggerhead-team/loggerhead/trunk-rich

« back to all changes in this revision

Viewing changes to loggerhead/templates/changelog.pt

  • Committer: Jelmer Vernooij
  • Date: 2011-11-02 01:56:02 UTC
  • mto: This revision was merged to the branch mainline in revision 458.
  • Revision ID: jelmer@samba.org-20111102015602-088uv5bi6m4ac2mr
Fix comment.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2
 
<tal:block define="onload string:sortCollapseElements()">
3
 
  <html xmlns="http://www.w3.org/1999/xhtml" metal:use-macro="macros/main">
4
 
    <head>
5
 
      <title metal:fill-slot="title"
6
 
             tal:content="string:${branch/friendly_name} : changes">
7
 
        ${branch.friendly_name} : changes
8
 
      </title>
9
 
      <metal:block fill-slot="header_extras">
10
 
        <link rel="alternate" type="application/atom+xml"
11
 
              tal:attributes="href python:url(['/atom']);
12
 
                              title string:RSS feed for ${branch/friendly_name}"
13
 
              />
14
 
 
15
 
        <script type="text/javascript"
16
 
                tal:attributes="src python:tg.url('/static/javascript/collapse.js')">
17
 
        </script>
18
 
      </metal:block>
19
 
    </head>
20
 
 
21
 
    <body>
22
 
 
23
 
      <h1 style="margin-bottom: 1em" metal:fill-slot="heading">
24
 
        <span class="branch-name" tal:content="branch/friendly_name">
25
 
          ${branch.friendly_name}
26
 
        </span>
27
 
        : changes
28
 
        <tal:block condition="filter_file_id">
29
 
          to
30
 
          <span class="filename"
31
 
                tal:content="python:history.get_path(revid, filter_file_id)">
32
 
          </span>
33
 
        </tal:block>
34
 
        <tal:block condition="viewing_from">
35
 
          from <tal:block content="python:history.get_revno(start_revid)" />
36
 
        </tal:block>
37
 
        <tal:block condition="query">
38
 
          matching <tal:block content="query" />
39
 
        </tal:block>
40
 
      </h1>
41
 
 
42
 
      <div metal:fill-slot="content">
43
 
 
44
 
        <p tal:condition="search_failed">
45
 
          Sorry, no results found for your search.
46
 
        </p>
47
 
 
48
 
        <p tal:condition="not:changes">
49
 
          No revisions!
50
 
        </p>
51
 
 
52
 
        <p tal:condition="changes"
53
 
           class="changelog">
54
 
          <tal:b content="structure python:collapse_all_button('cl')" />
55
 
        </p>
56
 
 
57
 
        <table class="log-entries"
58
 
               tal:define="subcolspan python:4-bool(all_same_author)">
59
 
          <tr class="log-header">
60
 
            <th class="revision-number">
61
 
              Rev
62
 
            </th>
63
 
            <th>
64
 
            </th>
65
 
            <th class="summary">
66
 
              Summary
67
 
            </th>
68
 
            <th tal:condition="not:all_same_author"
69
 
                class="author">
70
 
              Committer
71
 
            </th>
72
 
            <th class="date" colspan="2">
73
 
              Date
74
 
            </th>
 
2
<html xmlns="http://www.w3.org/1999/xhtml" metal:use-macro="macros/main">
 
3
  <head>
 
4
    <title metal:fill-slot="title"
 
5
           tal:content="string:${branch/friendly_name} : changes"></title>
 
6
    <metal:block fill-slot="header_extras">
 
7
      <link rel="alternate" type="application/atom+xml"
 
8
            tal:attributes="href python:url(['/atom']);
 
9
                            title string:RSS feed for ${branch/friendly_name}" />
 
10
    <script type="text/javascript">
 
11
      var revids = <tal:block content="data" />;
 
12
    </script>
 
13
      <script type="text/javascript"
 
14
              tal:attributes="src python:branch.static_url('/static/javascript/changelog.js')"></script>
 
15
    </metal:block>
 
16
  </head>
 
17
 
 
18
  <body>
 
19
      <tal:block metal:fill-slot="backlink">
 
20
          <tal:has-link condition="branch/branch_link">
 
21
            <div class="black-link">
 
22
                <a tal:attributes="href branch/branch_link">
 
23
                  &#8592; Back to branch summary
 
24
                </a>
 
25
            </div>
 
26
          </tal:has-link>
 
27
      </tal:block>
 
28
    <tal:block metal:fill-slot="branchname" tal:content="string:${branch/friendly_name}" />
 
29
    <tal:block metal:fill-slot="heading">
 
30
        <div id="breadcrumbs">
 
31
            <tal:has-link condition="branch/branch_link">
 
32
              <a tal:attributes="href branch/branch_link"
 
33
                 tal:content="branch/friendly_name">
 
34
                nice/branch/name
 
35
              </a>
 
36
            </tal:has-link>
 
37
            <tal:no-link condition="not: branch/branch_link">
 
38
              <span metal:use-macro="breadcrumbs/directory"></span>
 
39
            </tal:no-link>
 
40
            <tal:block condition="changes">
 
41
              &#187; Changes
 
42
              <tal:block condition="filter_file_id">to <span tal:content="python:history.get_path(revid, filter_file_id)" /></tal:block>
 
43
              <tal:block condition="start_revid">from revision
 
44
                <span tal:content="python:history.get_revno(start_revid)"/>
 
45
              </tal:block>
 
46
              <tal:block condition="query">matching <tal:block content="query" /></tal:block>
 
47
            </tal:block>
 
48
        </div>
 
49
    </tal:block>
 
50
 
 
51
    <div metal:fill-slot="content">
 
52
      <tal:branch-info replace="structure python:branchinfo(branch)" />
 
53
 
 
54
      <!-- Something nicer-looking should be done with search -->
 
55
      <p tal:condition="search_failed">
 
56
        Sorry, no results found for your search.
 
57
      </p>
 
58
 
 
59
      <p tal:condition="not:changes">
 
60
        No revisions!
 
61
      </p>
 
62
 
 
63
      <p class="fr revnolink">From Revision <a tal:attributes="href #
 
64
                                                               title python:'Show revision '+history.get_revno(revid)"
 
65
                                               tal:content="python:history.get_revno(revid)"></a>
 
66
        <tal:block tal:condition="python:navigation.last_in_page_revid is not None"> to
 
67
          <a tal:attributes="href #
 
68
                             title 'Show revision '+history.get_revno(navigation.last_in_page_revid)"
 
69
             tal:content="python:history.get_revno(navigation.last_in_page_revid)"></a>
 
70
      </tal:block></p>
 
71
      <p class="expand show_if_js" id="expand_all"><a href="#">
 
72
          <img tal:attributes="src python:branch.static_url('/static/images/treeCollapsed.png')"
 
73
               alt="expand all" /> expand all</a>
 
74
      </p>
 
75
      <p class="expand" id="collapse_all" style="display:none;"><a href="#">
 
76
          <img tal:attributes="src python:branch.static_url('/static/images/treeExpanded.png')"
 
77
               alt="collapse all" /> collapse all</a>
 
78
      </p>
 
79
      <!-- Table -->
 
80
      <table id="logentries">
 
81
        <tr class="logheader">
 
82
          <th class="revisionnumber">Rev</th>
 
83
          <th class="expandcell show_if_js">&nbsp;</th>
 
84
          <th class="summarycell">Summary</th>
 
85
          <th class="authorcell">Authors</th>
 
86
          <th tal:condition="show_tag_col" class="tagscell">Tags</th>
 
87
          <th class="datecell">Date</th>
 
88
          <th class="diffcell">Diff</th>
 
89
          <th class="downloadcell">Files</th>
 
90
        </tr>
 
91
        <tal:block tal:repeat="entry changes">
 
92
          <a tal:attributes="name string:entry-${entry/revno}"/>
 
93
          <tr tal:attributes="class string:blueRow${entry/parity} revision_log; id string:log-${entry/index}">
 
94
            <td class="revnro revnolink"><a tal:attributes="title python:'Show revision '+entry.revno;
 
95
                                                            href  python:url(['/revision', entry.revno], clear=1)"
 
96
                                            tal:content="python:util.trunc(entry.revno)"></a>
 
97
            </td>
 
98
            <td class="expcell show_if_js">
 
99
              <div class="expand_revisioninfo">
 
100
                <a href="#">
 
101
                  <img tal:attributes="src python:branch.static_url('/static/images/treeCollapsed.png')"
 
102
                       class="expand_icon" />
 
103
                </a>
 
104
              </div>
 
105
            </td>
 
106
            <td class="summcell">
 
107
              <div class="short_description">
 
108
                <img tal:condition="python:entry.parents[1:]"
 
109
                     tal:attributes="src python:branch.static_url('/static/images/ico_mergefrom.gif')" />
 
110
                <a tal:attributes="title python:'Show revision '+entry.revno;
 
111
                                   href  python:url(['/revision', entry.revno], clear=1);
 
112
                                   class string:link"
 
113
                   tal:content="entry/short_comment"></a>
 
114
              </div>
 
115
              <div class="long_description" style="display: none">
 
116
                <img tal:condition="python:entry.parents[1:]"
 
117
                     tal:attributes="src python:branch.static_url('/static/images/ico_mergefrom.gif')" />
 
118
                <a tal:attributes="title python:'Show revision '+entry.revno;
 
119
                                   href  python:url(['/revision', entry.revno], clear=1);
 
120
                                   class string:link"
 
121
                   tal:content="structure python:util.fixed_width(entry.comment)"></a>
 
122
                <div class="loading">
 
123
                  <img tal:attributes="src python:branch.static_url('/static/images/spinner.gif')" />
 
124
                </div>
 
125
              </div>
 
126
            </td>
 
127
            <td tal:content="python:util.trunc(util.hide_email(entry.authors[0]), 20)"
 
128
                class="autcell"></td>
 
129
            <td tal:condition="show_tag_col" tal:content="string:${entry/tags}"
 
130
                class="tagcell"></td>
 
131
            <td class="date">
 
132
              <span tal:attributes="title python:util.date_time(entry.date)"
 
133
                    tal:content="python:util._approximatedate(entry.date)"></span>
 
134
            </td>
 
135
            <td class="diffr"><a tal:attributes="title python:'Show diff at revision '+entry.revno;
 
136
                                                 href python:url(['/revision', entry.revno], clear=1)">
 
137
                <img tal:attributes="src python:branch.static_url('/static/images/ico_diff.gif')" alt="Diff" /></a></td>
 
138
            <td class="downr"><a tal:attributes="href python:branch.url(['/files', entry.revno]);
 
139
                                                 title string:Files at revision ${entry/revno}">
 
140
                <img tal:attributes="src python:branch.static_url('/static/images/ico_file.gif')" alt="Files" /></a>
 
141
            </td>
75
142
          </tr>
76
 
          <tal:block tal:repeat="entry changes">
77
 
            <a tal:attributes="name string:entry-${entry/revno}" />
78
 
            <tr tal:attributes="class string:revision-header parity${entry/parity}">
79
 
              <td class="revision-number">
80
 
                <a tal:attributes="title python:'Show revision '+history.get_revno(entry.revid);
81
 
                                   href  python:url(['/revision', entry.revid])"
82
 
                   tal:content="python:util.trunc(entry.revno)">
83
 
                  text
84
 
                </a>
85
 
              </td>
86
 
              <td class="expand-button" tal:define="name entry/revno"
87
 
                  tal:content="structure python:collapse_button('cl', entry.revno)">
88
 
              </td>
89
 
              <td class="summary">
90
 
                <a tal:attributes="title python:'Show revision '+history.get_revno(entry.revid);
91
 
                                   href  python:url(['/revision', entry.revid])"
92
 
                   tal:content="entry/short_comment">
93
 
                  text
94
 
                </a>
95
 
              </td>
96
 
              <td tal:condition="not:all_same_author"
97
 
                  tal:content="python:util.trunc(util.hide_email(entry.author), 20)"
98
 
                  class="author"></td>
99
 
              <td class="date">
100
 
                  <span tal:attributes="title python:util.date_time(entry.date)"
101
 
                        tal:content="python:util._approximatedate(entry.date)"></span>
102
 
              </td>
103
 
              <td class="inventory-link">
104
 
                <a tal:attributes="href python:branch.url(['/files', entry.revid]);
105
 
                                   title string:Files at revision ${entry/revno}">
106
 
                  files
107
 
                </a>
108
 
              </td>
109
 
            </tr>
110
 
 
111
 
            <tr tal:attributes="class string:revision-details-block parity${entry/parity}">
112
 
              <td colspan="2">
113
 
              </td>
114
 
              <td tal:attributes="colspan subcolspan">
115
 
                <table tal:attributes="class string:revision-details hidden-details collapse-cl-${entry/revno}-content">
116
 
                  <tr tal:repeat="merge_point entry/merge_points">
117
 
                    <th class="children">
118
 
                      <tal:block condition="repeat/merge_point/start">
119
 
                        merged in:
120
 
                      </tal:block>
121
 
                    </th>
122
 
                    <td class="children">
123
 
                      <a title="Show history"
124
 
                         tal:attributes="href python:url(['/changes'], start_revid=merge_point.revid)"
125
 
                         tal:content="python:revno_with_nick(merge_point)">
126
 
                        class="revlink">
127
 
                        ${text}
128
 
                      </a>
129
 
                    </td>
130
 
                  </tr>
131
 
                  <tr tal:repeat="parent python:entry.parents[1:]">
132
 
                    <th class="parents">
133
 
                      <tal:block condition="repeat/parent/start">
134
 
                        merged from:
135
 
                      </tal:block>
136
 
                    </th>
137
 
                    <td class="parents">
138
 
                      <a title="Show history"
139
 
                         tal:attributes="href python:url(['/changes'], start_revid=parent.revid)"
140
 
                         tal:content="python:revno_with_nick(parent)">
141
 
                        class="revlink">
142
 
                        ${text}
143
 
                      </a>
144
 
                    </td>
145
 
                  </tr>
146
 
                  <tr tal:condition="all_same_author">
147
 
                    <th class="author">
148
 
                      committed by:
149
 
                    </th>
150
 
                    <td class="author" tal:content="python:util.hide_email(entry.author)">
151
 
                      ${util.hide_email(entry.author)}
152
 
                    </td>
153
 
                  </tr>
154
 
                  <tr>
155
 
                    <th class="description">
156
 
                      description:
157
 
                    </th>
158
 
                    <td class="description">
159
 
                      <tal:block repeat="line entry/comment_clean"
160
 
                                 content="structure string:${line}&lt;br /&gt;" />
161
 
                    </td>
162
 
                  </tr>
163
 
                  <tal:block content="structure python:file_change_summary(url, entry, modified_file_link_log)" />
164
 
                </table>
165
 
              </td>
166
 
            </tr>
167
 
          </tal:block>
168
 
        </table>
169
 
 
170
 
        <div tal:condition="python:navigation.prev_page_revid or navigation.next_page_revid"
171
 
             class="bar">
172
 
          <table>
173
 
            <tr>
174
 
              <td class="buttons">
175
 
                <a tal:condition="navigation/prev_page_revid"
176
 
                   tal:attributes="href navigation/prev_page_url">
177
 
                  &lt;&lt; page
178
 
                </a>
179
 
              </td>
180
 
              <td class="rbuttons" align="right">
181
 
                <a tal:condition="navigation/next_page_revid"
182
 
                   tal:attributes="href navigation/next_page_url">
183
 
                  page &gt;&gt;
184
 
                </a>
185
 
              </td>
186
 
            </tr>
187
 
          </table>
188
 
        </div>
189
 
      </div>
190
 
    </body>
191
 
  </html>
192
 
</tal:block>
 
143
        </tal:block>
 
144
      </table>
 
145
 
 
146
      <ul tal:condition="python:navigation.prev_page_revid or navigation.next_page_revid"
 
147
          id="pages">
 
148
        <li tal:condition="navigation/prev_page_revid"
 
149
            class="previous">
 
150
          <a tal:attributes="href navigation/prev_page_url">&laquo; Newer</a>
 
151
        </li>
 
152
        <!-- FIXME: Leaving this to eventually show page numbers. Can't show all of them,
 
153
             so some magic has to be done to just show the previous and next N page numbers
 
154
 
 
155
             <li class="active">1</li>
 
156
             <tal:block tal:repeat="page_number python:range(navigation.page_count)">
 
157
               <li><a href="#"
 
158
                      tal:content="page_number"></a></li>
 
159
             </tal:block>-->
 
160
        <li tal:condition="navigation/next_page_revid"
 
161
            class="next">
 
162
          <a tal:attributes="href navigation/next_page_url">Older &raquo;</a>
 
163
        </li>
 
164
      </ul>
 
165
 
 
166
    </div>
 
167
  </body>
 
168
</html>