use C4::Output;
use Koha::UploadedFiles;
+use constant ERR_READING => 'UPLERR_FILE_NOT_READ';
+use constant ALERT_DELETED => 'UPL_FILE_DELETED'; # alert, no error
+use constant ERR_NOT_DELETED => 'UPLERR_FILE_NOT_DELETED';
+
my $input = CGI::->new;
my $op = $input->param('op') // 'new';
my $plugin = $input->param('plugin');
} elsif ( $op eq 'search' ) {
my $uploads;
- if( $id ) {
- my $rec = Koha::UploadedFiles->find( $id );
- undef $rec if $rec && $plugin && !$rec->public;
- push @$uploads, $rec->unblessed if $rec;
+ if( $id ) { # might be a comma separated list
+ my @id = split /,/, $id;
+ foreach my $recid (@id) {
+ my $rec = Koha::UploadedFiles->find( $recid );
+ push @$uploads, $rec->unblessed
+ if $rec && ( $rec->public || !$plugin );
+ # Do not show private uploads in the plugin mode (:editor)
+ }
} else {
$uploads = Koha::UploadedFiles->search_term({
term => $term,
my $delete = $rec ? $rec->delete : undef;
#TODO Improve error handling
my $msg = $delete
- ? JSON::to_json({ $fn => { code => 6 }})
+ ? JSON::to_json({ $fn => { code => ALERT_DELETED }})
: $id
- ? JSON::to_json({ $fn || $id, { code => 7 }})
+ ? JSON::to_json({ $fn || $id, { code => ERR_NOT_DELETED }})
: '';
$template->param(
mode => 'deleted',
if ( !$rec || !$fh ) {
$template->param(
mode => 'new',
- msg => JSON::to_json({ $id => { code => 5 }}),
+ msg => JSON::to_json({ $id => { code => ERR_READING }}),
);
output_html_with_http_headers $input, $cookie, $template->output;
} else {