=cut
use IO::Capture::Stdout;
-use File::Slurp qw(slurp);
=head2 run_gitweb
sub blob : Local {
my ( $self, $c ) = @_;
+ my $h = $c->req->param('h')
+ || $c->model('Git')->hash_by_path($c->req->param('f'))
+ || die "No file or sha1 provided.";
+ my $hb = $c->req->param('hb')
+ || $c->model('Git')->head_hash
+ || die "Couldn't discern the corresponding head.";
+
$c->stash(
- blob => $c->model('GPP')->get_object($c->req->param('h'))->content,
- action => 'blob',
+ blob => $c->model('Git')->get_object($h)->content,
+ head => $c->model('Git')->get_object($hb),
+ filename => $c->req->param('f') || '',
+ action => 'blob',
);
- $c->forward('View::Syntax')
- if $c->req->param('f') and $c->req->param('f') =~ /\.p[lm]$/;
+ $c->forward('View::SyntaxHighlight');
}
=head2 reflog
my ( $self, $c ) = @_;
$c->stash(
- commit => $c->model('GPP')->get_object($c->req->param('h')),
+ commit => $c->model('Git')->get_object($c->req->param('h')),
action => 'commit',
);
}
sub auto : Private {
my($self, $c) = @_;
+ # XXX Temp hack until a decent solution is invented.
+ $c->model('Git')->project($c->req->param('p'))
+ if $c->req->param('p');
+
# Yes, this is hideous.
$self->header($c);
$self->footer($c);