summary refs log tree commit diff
path: root/lib/ballet/Page.pm
blob: 7eafa90ca08835c4bbdf9720f7292caae029a35d (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
package ballet::Page;

use Mouse::Role;

sub find_page {
    my ($self, $name, $version) = @_;
    $version ||= 'master';
    my @output = $self->git_repo->run('ls-tree', $version);
    my @page =  grep {$_ =~ /$name\./} @output;
    if (!@page) {
        die "blablabla";
    }

    return $self->_format_page(shift @page);
    
}

sub _format_page {
    my ($self, $blob) = @_;
    my @line = split (/\s/, $blob);
    my @content = $self->git_repo->run('cat-file', '-p', $line[2]);
    return join("\n", @content);
}

1;