use CGI qw ( -utf8 );
use C4::Auth;
use C4::Biblio;
-use C4::Csv;
use C4::Koha;
use C4::Items;
use C4::Members;
use C4::Output;
use C4::XSLT;
+
+use Koha::Biblios;
+use Koha::Biblioitems;
+use Koha::CsvProfiles;
use Koha::Virtualshelves;
my $query = new CGI;
if ( $shelf ) {
$op = $referer;
if ( $shelf->can_be_managed( $loggedinuser ) ) {
- $shelf->shelfname( $query->param('shelfname') );
- $shelf->sortfield( $query->param('sortfield') );
- $shelf->allow_add( $query->param('allow_add') );
- $shelf->allow_delete_own( $query->param('allow_delete_own') );
- $shelf->allow_delete_other( $query->param('allow_delete_other') );
- $shelf->category( $query->param('category') );
+ $shelf->shelfname( scalar $query->param('shelfname') );
+ $shelf->sortfield( scalar $query->param('sortfield') );
+ $shelf->allow_add( scalar $query->param('allow_add') );
+ $shelf->allow_delete_own( scalar $query->param('allow_delete_own') );
+ $shelf->allow_delete_other( scalar $query->param('allow_delete_other') );
+ $shelf->category( scalar $query->param('category') );
eval { $shelf->store };
if ($@) {
my $borrower = GetMember( borrowernumber => $loggedinuser );
+ my $xslfile = C4::Context->preference('XSLTListsDisplay');
+ my $lang = $xslfile ? C4::Languages::getlanguage() : undef;
+ my $sysxml = $xslfile ? C4::XSLT::get_xslt_sysprefs() : undef;
+
my @items;
while ( my $content = $contents->next ) {
my $this_item;
- my $biblionumber = $content->biblionumber->biblionumber;
+ my $biblionumber = $content->biblionumber;
my $record = GetMarcBiblio($biblionumber);
- if ( C4::Context->preference("XSLTResultsDisplay") ) {
- $this_item->{XSLTBloc} = XSLTParse4Display( $biblionumber, $record, "XSLTResultsDisplay" );
+ if ( $xslfile ) {
+ $this_item->{XSLTBloc} = XSLTParse4Display( $biblionumber, $record, "XSLTListsDisplay",
+ 1, undef, $sysxml, $xslfile, $lang);
}
my $marcflavour = C4::Context->preference("marcflavour");
- my $itemtypeinfo = getitemtypeinfo( $content->biblionumber->biblioitems->first->itemtype, 'intranet' );
- $this_item->{author} = $content->biblionumber->author;
+ my $itemtype = Koha::Biblioitems->search({ biblionumber => $content->biblionumber })->next->itemtype;
+ my $itemtypeinfo = getitemtypeinfo( $itemtype, 'intranet' );
+ my $biblio = Koha::Biblios->find( $content->biblionumber );
+ $this_item->{title} = $biblio->title;
+ $this_item->{author} = $biblio->author;
$this_item->{dateadded} = $content->dateadded;
$this_item->{imageurl} = $itemtypeinfo->{imageurl};
$this_item->{description} = $itemtypeinfo->{description};
}
} else {
push @messages, { type => 'error', code => 'unauthorized_on_view' };
+ undef $shelf;
}
} else {
push @messages, { type => 'error', code => 'does_not_exist' };
messages => \@messages,
category => $category,
print => scalar $query->param('print') || 0,
- csv_profiles => GetCsvProfilesLoop('marc'),
+ csv_profiles => [ Koha::CsvProfiles->search({ type => 'marc' }) ],
);
output_html_with_http_headers $query, $cookie, $template->output;