use C4::Auth;
use C4::Output;
-use Koha::Upload;
use Koha::UploadedFiles;
my $input = CGI::->new;
index => $index,
owner => $loggedinuser,
plugin => $plugin,
+ uploadcategories => Koha::UploadedFiles->getCategories,
);
if ( $op eq 'new' ) {
$template->param(
mode => 'new',
- uploadcategories => Koha::Upload->getCategories,
);
output_html_with_http_headers $input, $cookie, $template->output;
} elsif ( $op eq 'search' ) {
my $uploads;
if( $id ) {
- my $rec = Koha::UploadedFiles->search({
- id => $id,
- $plugin? ( public => 1 ) : (),
- })->next;
+ my $rec = Koha::UploadedFiles->find( $id );
+ undef $rec if $rec && $plugin && !$rec->public;
push @$uploads, $rec->unblessed if $rec;
} else {
$uploads = Koha::UploadedFiles->search_term({
} elsif ( $op eq 'delete' ) {
# delete only takes the id parameter
- my $upload = $plugin?
- Koha::UploadedFiles->search({ public => 1, id => $id })->next:
- Koha::UploadedFiles->find($id);
- my $fn = $upload? $upload->delete: undef;
+ my $rec = Koha::UploadedFiles->find($id);
+ undef $rec if $rec && $plugin && !$rec->public;
+ my $fn = $rec ? $rec->filename : '';
+ my $delete = $rec ? $rec->delete : undef;
#TODO Improve error handling
- my $msg = $fn?
- JSON::to_json({ $fn => 6 }):
- JSON::to_json({
- $upload? $upload->filename: ( $id? "id $id": '[No id]' ), 7,
- });
+ my $msg = $delete
+ ? JSON::to_json({ $fn => 6 })
+ : $id
+ ? JSON::to_json({ $fn || $id, 7 })
+ : '';
$template->param(
mode => 'deleted',
msg => $msg,
- uploadcategories => Koha::Upload->getCategories,
);
output_html_with_http_headers $input, $cookie, $template->output;
} elsif ( $op eq 'download' ) {
- my $rec = Koha::UploadedFiles->search({
- id => $id,
- $plugin? ( public => 1 ) : (),
- })->next;
+ my $rec = Koha::UploadedFiles->find( $id );
+ undef $rec if $rec && $plugin && !$rec->public;
my $fh = $rec? $rec->file_handle: undef;
if ( !$rec || !$fh ) {
$template->param(
mode => 'new',
msg => JSON::to_json( { $id => 5 } ),
- uploadcategories => Koha::Upload->getCategories,
);
output_html_with_http_headers $input, $cookie, $template->output;
} else {
- my @hdr = Koha::Upload->httpheaders( $rec->filename );
- print Encode::encode_utf8( $input->header(@hdr) );
+ print Encode::encode_utf8( $input->header( $rec->httpheaders ) );
while (<$fh>) {
print $_;
}