{
package App::IdiotBox::Announcement;
+ sub id { shift->{id} }
sub made_at { shift->{made_at} }
sub bucket { shift->{bucket} }
sub video_count { shift->{video_count} }
(my $s = join(' ', @{+shift}{qw(author name)})) =~ s/ /-/g;
$s;
}
+ sub url_path {
+ join('/', $_[0]->bucket->slug, $_[0]->slug);
+ }
}
default_config(
store => 'SQLite',
db_file => 'var/lib/idiotbox.db',
base_url => 'http://localhost:3000/',
+ base_dir => do { use FindBin; $FindBin::Bin },
);
sub BUILD {
}
}
+method _run_cli {
+ unless (@ARGV == 1 && $ARGV[0] eq 'import') {
+ return $self->SUPER::_run_cli(@_);
+ }
+ $self->cli_import;
+}
+
+method _cli_usage {
+ "To import data into your idiotbox install, chdir into a directory\n".
+ "containing video files and run:\n".
+ "\n".
+ " $0 import\n".
+ "\n".
+ $self->SUPER::_cli_usage(@_);
+}
+
+method cli_import {
+ require App::IdiotBox::Importer;
+ App::IdiotBox::Importer->run($self);
+}
+
1;