sub get {
my ($self, %params) = @_;
- die 'no id' unless $params{id};
- my $dbfile = SL::DB::Manager::File->get_first(query => [id => $params{id}]);
- die 'not found' unless $dbfile;
- $main::lxdebug->message(LXDebug->DEBUG2(), "object_id=".$dbfile->object_id." object_type=".$dbfile->object_type." dbfile=".$dbfile);
- SL::File::Object->new(db_file => $dbfile, id => $dbfile->id, loaded => 1);
+ die "no id or dbfile" unless $params{id} || $params{dbfile};
+ $params{dbfile} = SL::DB::Manager::File->get_first(query => [id => $params{id}]) if !$params{dbfile};
+ die 'not found' unless $params{dbfile};
+ $main::lxdebug->message(LXDebug->DEBUG2(), "object_id=".$params{dbfile}->object_id." object_type=".$params{dbfile}->object_type." dbfile=".$params{dbfile});
+ SL::File::Object->new(db_file => $params{dbfile}, id => $params{dbfile}->id, loaded => 1);
}
sub get_version_count {
object_id => $params{object_id},
object_type => $params{object_type}
);
- push @query, (file_name => $params{file_name}) if $params{file_name};
- push @query, (file_type => $params{file_type}) if $params{file_type};
- push @query, (mime_type => $params{mime_type}) if $params{mime_type};
- push @query, (source => $params{source}) if $params{source};
+ push @query, (file_name => $params{file_name}) if $params{file_name};
+ push @query, (file_type => $params{file_type}) if $params{file_type};
+ push @query, (mime_type => $params{mime_type}) if $params{mime_type};
+ push @query, (source => $params{source}) if $params{source};
+ push @query, (print_variant => $params{print_variant}) if $params{print_variant};
my $sortby = $params{sort_by} || 'itime DESC,file_name ASC';
sub get_all_versions {
my ($self, %params) = @_;
my @versionobjs;
- my @fileobjs = $self->get_all(%params);
+ my @fileobjs;
if ( $params{dbfile} ) {
- push @fileobjs, SL::File::Object->new(dbfile => $params{db_file}, id => $params{dbfile}->id, loaded => 1);
+ push @fileobjs, SL::File::Object->new(db_file => $params{dbfile}, id => $params{dbfile}->id, loaded => 1);
} else {
@fileobjs = $self->get_all(%params);
}
object_id => $params{object_id},
object_type => $params{object_type}
);
- push @query, (file_name => $params{file_name}) if $params{file_name};
- push @query, (file_type => $params{file_type}) if $params{file_type};
- push @query, (mime_type => $params{mime_type}) if $params{mime_type};
- push @query, (source => $params{source}) if $params{source};
+ push @query, (file_name => $params{file_name}) if $params{file_name};
+ push @query, (file_type => $params{file_type}) if $params{file_type};
+ push @query, (mime_type => $params{mime_type}) if $params{mime_type};
+ push @query, (source => $params{source}) if $params{source};
+ push @query, (print_variant => $params{print_variant}) if $params{print_variant};
my $cnt = SL::DB::Manager::File->get_all_count(query => [@query]);
return $cnt;
mime_type => $params{mime_type},
title => $params{title},
description => $params{description},
+ print_variant => $params{print_variant},
);
$file->itime($params{mtime}) if $params{mtime};
$params{itime} = $params{mtime} if $params{mtime};