Added first cut of /shortlog action and simplified the parse_rev_list() method.
[catagits/Gitalist.git] / templates / commit.tt2
1 [% INCLUDE 'commit-nav.tt2' object = commit %]
2 <div class='commit-message'>
3 [% commit.comment.substr(0, 85) %] ...
4 [% FOREACH ref IN c.model('Git').refs_for(commit.sha1) %]
5  <span class='refs'><a href='/shortlog?h=[% commit.sha1 %];hb=[% ref %]'>[% ref %]</a></span>
6 [% END %]
7 </div>
8
9 <dl class='commit-info'>
10  <dt>author</dt>
11   <dd>[% commit.author.name %] &lt;[% commit.author.email %]&gt;<br/>
12       [% commit.authored_time %]</dd>
13  <dt>committer</dt>
14   <dd>[% commit.committer.name %] &lt;[% commit.committer.email %]&gt;<br/>
15       [% commit.committed_time %]</dd>
16  <dt>commit</dt>
17   <dd>[% commit.sha1 %]</dd>
18  <dt>tree</dt>
19   <dd>[% commit.tree_sha1 %] <a href="/tree?h=[% commit.sha1 %];hb=[% commit.tree_sha1 %]">tree</a></dd>
20  [% FOREACH parent IN commit.parents %]
21  <dt>parent</dt>
22   <dd>[% parent %] <a href="/commit?h=[% commit.sha1 %]">commit</a></dd>
23  [% END %]
24 </dl>
25
26 <pre class='commit-message'>[% commit.comment %]</pre>
27
28 <table class='diff-tree'>
29  <thead>
30   <tr>
31    <td>file</td>
32    <td>actions</td>
33   </tr>
34  </thead>
35  <tbody>
36   [% FOREACH line IN c.model('Git').diff_tree(commit) %]
37   <tr>
38    <td class='filename'>[% line.src %]</td>
39    <td class='action-list'>
40      [% IF !line.is_new %]<a href="/blobdiff?p=[% project %];f=[% line.file %];h=[% line.sha1dst %];hp=[% sha1src %]">diff</a>[% END %]
41      <a href="/blob?p=[% project %];f=[% line.file %];h=[% line.sha1 %];hb=[% commit.sha1 %]">blob</a>
42      [% IF !line.is_new %]<a href="/log?p=[% project %];f=[% line.file %];hb[% commit.sha1 %]=">history</a>[% END %]
43    </td>
44   </tr>
45   [% END %]
46  </tbody>
47  <tfoot>
48   <tr>
49    <td>file</td>
50    <td>actions</td>
51   </tr>
52  </tfoot>
53 </table>
54
55 <!--
56
57 $Git_PurePerl_Object_Commit1 = bless( {
58                                  author   => bless( {
59                                                email => 'broq@cpan.org',
60                                                name  => 'broquaint'
61                                              }, 'Git::PurePerl::Actor' ),
62                                  authored_time
63                                           => {
64                                                DateTime
65                                              },
66                                  comment  => 'The blob action now has simple (but functioning) syntax highlighting (thanks to jrockway\'s Angerwhale for the highlighting code).',
67                                  committed_time
68                                           => {
69                                                DateTime
70                                              },
71                                  committer
72                                           => bless( {
73                                                email => 'broq@cpan.org',
74                                                name  => 'broquaint'
75                                              }, 'Git::PurePerl::Actor' ),
76                                  content  => "tree 278387038d3a42dcc9b3b33d6809c71371caee90\nparent b222ff0a7260cc1777c".
77         "7e455dfcaf22551a512fc\nauthor broquaint <broq\@cpan.org> 1256204829 +0100\n".
78         "committer broquaint <broq\@cpan.org> 1256204829 +0100\n\nThe blob action no".
79         "w has simple (but functioning) syntax highlighting (thanks to jrockway's".
80         " Angerwhale for the highlighting code).\n",
81                                  git      => bless( {
82                                                directory => {
83                                                               dirs     => [ '.' ],
84                                                               file_spec_class
85                                                                        => undef,
86                                                               volume   => ''
87                                                             },
88                                                gitdir    => {
89                                                               dirs     => [ '.git' ],
90                                                               file_spec_class
91                                                                        => undef,
92                                                               volume   => ''
93                                                             },
94                                                loose     => bless( { directory => {
95                                                               dirs     => [
96                                                                             '.git',
97                                                                             'objects'
98                                                                           ],
99                                                               file_spec_class
100                                                                        => undef,
101                                                               volume   => ''
102                                                             } }, 'Git::PurePerl::Loose' ),
103                                                packs     => [ bless( {
104                                                               fh      => bless( do{ require Symbol; Symbol::gensym }, 'IO::File' ),
105                                                               filename
106                                                                       => {
107                                                                            dir     => {
108                                                                                         dirs     => [
109                                                                                                       '.git',
110                                                                                                       'objects',
111                                                                                                       'pack'
112                                                                                                     ],
113                                                                                         file_spec_class
114                                                                                                  => undef,
115                                                                                         volume   => ''
116                                                                                       },
117                                                                            file    => 'pack-76da0c32a0a4918d1828d110636caad32af6ec6c.pack',
118                                                                            file_spec_class
119                                                                                    => undef
120                                                                          },
121                                                               index   => bless( {
122                                                                            fh       => bless( Symbol::gensym, 'IO::File' ),
123                                                                            filename => {
124                                                                                          dir     => {
125                                                                                                       dirs     => [
126                                                                                                                     '.git',
127                                                                                                                     'objects',
128                                                                                                                     'pack'
129                                                                                                                   ],
130                                                                                                       file_spec_class
131                                                                                                                => undef,
132                                                                                                       volume   => ''
133                                                                                                     },
134                                                                                          file    => 'pack-76da0c32a0a4918d1828d110636caad32af6ec6c.idx',
135                                                                                          file_spec_class
136                                                                                                  => undef
137                                                                                        },
138                                                                            offsets  => [
139                                                                                          ( 0 ) x 23,
140                                                                                          ( 1 ) x 29,
141                                                                                          ( 2 ) x 11,
142                                                                                          ( 3 ) x 6,
143                                                                                          ( 4 ) x 22,
144                                                                                          ( 5 ) x 51,
145                                                                                          ( 6 ) x 78,
146                                                                                          ( 7 ) x 3,
147                                                                                          ( 8 ) x 34
148                                                                                        ],
149                                                                            size     => 8
150                                                                          }, 'Git::PurePerl::PackIndex::Version2' ),
151                                                               index_filename
152                                                                       => {
153                                                                            dir     => {
154                                                                                         dirs     => [
155                                                                                                       '.git',
156                                                                                                       'objects',
157                                                                                                       'pack'
158                                                                                                     ],
159                                                                                         file_spec_class
160                                                                                                  => undef,
161                                                                                         volume   => ''
162                                                                                       },
163                                                                            file    => 'pack-76da0c32a0a4918d1828d110636caad32af6ec6c.idx',
164                                                                            file_spec_class
165                                                                                    => undef
166                                                                          }
167                                                             }, 'Git::PurePerl::Pack::WithIndex' ) ]
168                                              }, 'Git::PurePerl' ),
169                                  kind     => 'commit',
170                                  parent_sha1
171                                           => 'b222ff0a7260cc1777c7e455dfcaf22551a512fc',
172                                  parents  => [ 'b222ff0a7260cc1777c7e455dfcaf22551a512fc' ],
173                                  sha1     => '7e54e579e196c6c545fee1030175f65a111039d4',
174                                  size     => 328,
175                                  tree_sha1
176                                           => '278387038d3a42dcc9b3b33d6809c71371caee90'
177                                }, 'Git::PurePerl::Object::Commit' );
178 $Git_PurePerl_Object_Commit1->{committed_time}{locale} = $Git_PurePerl_Object_Commit1->{authored_time}{locale};
179 bless( $Git_PurePerl_Object_Commit1->{authored_time}, 'DateTime' );
180 bless( $Git_PurePerl_Object_Commit1->{committed_time}, 'DateTime' );
181 bless( $Git_PurePerl_Object_Commit1->{git}{directory}, 'Path::Class::Dir' );
182 bless( $Git_PurePerl_Object_Commit1->{git}{gitdir}, 'Path::Class::Dir' );
183 bless( $Git_PurePerl_Object_Commit1->{git}{loose}{directory}, 'Path::Class::Dir' );
184 bless( $Git_PurePerl_Object_Commit1->{git}{packs}[0]{filename}{dir}, 'Path::Class::Dir' );
185 bless( $Git_PurePerl_Object_Commit1->{git}{packs}[0]{filename}, 'Path::Class::File' );
186 bless( $Git_PurePerl_Object_Commit1->{git}{packs}[0]{index}{filename}{dir}, 'Path::Class::Dir' );
187 bless( $Git_PurePerl_Object_Commit1->{git}{packs}[0]{index}{filename}, 'Path::Class::File' );
188 bless( $Git_PurePerl_Object_Commit1->{git}{packs}[0]{index_filename}{dir}, 'Path::Class::Dir' );
189 bless( $Git_PurePerl_Object_Commit1->{git}{packs}[0]{index_filename}, 'Path::Class::File' );
190 -->