package PiTube::Controller::Stream;
use Mojo::Base 'Mojolicious::Controller';

use constant CONTENT_TYPE => {
    m3u8 => 'application/vnd.apple.mpegurl',
    ts   => 'video/mp2t',
};

sub list {
    my $c = shift;

    my $cond = {
        is_active => 't'
    };

    $cond->{is_public} = 't' if ! $c->is_user_authenticated;

    my $streams = $c->schema->resultset('Stream_view')->search(
        $cond,
        { order_by => 'name' }
    );

    $c->stash->{streams} = $streams;

}


sub player {
    my $c = shift;

    # vzdy aktualizovat
    $c->session->{user}{acl} = $c->schema->resultset('ACL')->user_acl(
        $c->session->{user}
    );

    # stream
    my $stream = $c->schema->resultset('Stream_view')->find({
        key => $c->stash->{key}
    });

    if ( ! $stream ) {
        $c->render('stream/404');
        return;
    }

    $c->stash->{stream} = $stream;

    if ( ! $c->session->{user}{acl}{ $stream->key } ) {
        $c->render('stream/403');
        return;
    }

    $c->render();
}


1;

__END__