X-Git-Url: http://koha-dev.rot13.org:8081/gitweb/?a=blobdiff_plain;f=opac%2Fopac-main.pl;h=c76f696da5393138cd8ecca8a9b7428ac6128826;hb=c5999dbbbd1bcfb45f258140c9b1f0041bb848f6;hp=970fcca5075e6737250cacc335042bb7a09a1da3;hpb=abebb31d3012e52c652563f5ea11d74788b8bdd6;p=koha-ffzg.git diff --git a/opac/opac-main.pl b/opac/opac-main.pl index 970fcca507..c76f696da5 100755 --- a/opac/opac-main.pl +++ b/opac/opac-main.pl @@ -1,39 +1,112 @@ #!/usr/bin/perl + +# This file is part of Koha. +# +# Koha is free software; you can redistribute it and/or modify it under the +# terms of the GNU General Public License as published by the Free Software +# Foundation; either version 2 of the License, or (at your option) any later +# version. +# +# Koha is distributed in the hope that it will be useful, but WITHOUT ANY +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR +# A PARTICULAR PURPOSE. See the GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along with +# Koha; if not, write to the Free Software Foundation, Inc., 59 Temple Place, +# Suite 330, Boston, MA 02111-1307 USA + +# $Id$ + use strict; require Exporter; use CGI; -use HTML::Template; - -use C4::Auth; # get_template_and_user -use C4::Interface::CGI::Output; +use C4::Auth; # get_template_and_user +use C4::Output; +use C4::BookShelves; +use C4::Languages; # getTranslatedLanguages +use C4::Branch; # GetBranches +use C4::Members; # GetMember +use C4::NewsChannels; # get_opac_news +use C4::Acquisition; # GetRecentAcqui my $input = new CGI; -my $dbh = C4::Context->dbh; -my $query="Select itemtype,description from itemtypes order by description"; -my $sth=$dbh->prepare($query); -$sth->execute; -my @itemtype; -my %itemtypes; -while (my ($value,$lib) = $sth->fetchrow_array) { - push @itemtype, $value; - $itemtypes{$value}=$lib; +my $dbh = C4::Context->dbh; + +my $limit = $input->param('recentacqui'); + +my @branches; +my @select_branch; +my %select_branches; +my $branches = GetBranches(); +my @branchloop; +foreach my $thisbranch ( keys %$branches ) { + my $selected = 1 + if ( C4::Context->userenv + && ( $thisbranch eq C4::Context->userenv->{branch} ) ); + my %row = ( + value => $thisbranch, + selected => $selected, + branchname => $branches->{$thisbranch}->{'branchname'}, + ); + push @branchloop, \%row; +} +my ( $template, $borrowernumber, $cookie ) = get_template_and_user( + { + template_name => "opac-main.tmpl", + type => "opac", + query => $input, + authnotrequired => 1, + flagsrequired => { borrow => 1 }, + } +); + +if($limit) { + my $recentacquiloop = GetRecentAcqui($limit); +# warn Data::Dumper::Dumper($recentacquiloop); + $template->param( + recentacquiloop => $recentacquiloop, + ); } -my $CGIitemtype=CGI::scrolling_list( -name => 'itemtype', - -values => \@itemtype, - -labels => \%itemtypes, - -size => 1, - -multiple => 0 ); -$sth->finish; -my ($template, $borrowernumber, $cookie) - = get_template_and_user({template_name => "opac-main.tmpl", - type => "opac", - query => $input, - authnotrequired => 1, - flagsrequired => {borrow => 1}, - }); - -$template->param(CGIitemtype => $CGIitemtype, - LibraryName => C4::Context->preference("LibraryName"), +my $borrower = GetMember( $borrowernumber,'borrowernumber' ); +my @languages; +my $counter = 0; +my $langavail = getTranslatedLanguages('opac'); +foreach my $language ( @$langavail ) { + # next if $currently_selected_languages->{$language}; + # FIXME: could incorporate language_name and language_locale_name for better display + push @languages, { language => $language->{'language_code'}, counter => $counter }; + $counter++; +} + +# Template params +if ( $counter > 1 ) { + $template->param(languages => \@languages) if C4::Context->preference('opaclanguagesdisplay'); +} + +$template->param( + branchloop => \@branchloop, + textmessaging => $borrower->{textmessaging}, + opaclanguagesdisplay => 0, ); + +# display news +# use cookie setting for language, bug default to syspref if it's not set +my $news_lang = $input->cookie('KohaOpacLanguage') || C4::Context->preference('opaclanguages'); +my $all_koha_news = &GetNewsToDisplay( $news_lang ); +my $koha_news_count = scalar @$all_koha_news; + +$template->param( + koha_news => $all_koha_news, + koha_news_count => $koha_news_count +); + +$template->param( + 'Disable_Dictionary' => C4::Context->preference("Disable_Dictionary") ) + if ( C4::Context->preference("Disable_Dictionary") ); +$template->param( + 'OpacAuthorities' => 1 ); +$template->param( + 'OpacCloud' => 1 ); + output_html_with_http_headers $input, $cookie, $template->output;