X-Git-Url: http://git.rot13.org/?a=blobdiff_plain;f=opac%2Fopac-suggestions.pl;h=15eebf914459790806b37634a3f6c0603c4178e7;hb=c82d114f1ef6dfc8abc289e01b104e1c4a5d290e;hp=6f518d7eb0424010aef52adff4a9a7efe040bb9a;hpb=03d9a7987896f091543117a28e63a06da9c82ebd;p=koha.git diff --git a/opac/opac-suggestions.pl b/opac/opac-suggestions.pl index 6f518d7eb0..15eebf9144 100755 --- a/opac/opac-suggestions.pl +++ b/opac/opac-suggestions.pl @@ -20,6 +20,7 @@ use warnings; use CGI; use C4::Auth; # get_template_and_user +use C4::Members; use C4::Branch; use C4::Koha; use C4::Output; @@ -35,7 +36,8 @@ delete $$suggestion{$_} foreach qw; $op = 'else' unless $op; my ( $template, $borrowernumber, $cookie ); - +my $deleted = $input->param('deleted'); +my $submitted = $input->param('submitted'); if ( C4::Context->preference("AnonSuggestions") ) { ( $template, $borrowernumber, $cookie ) = get_template_and_user( @@ -43,11 +45,11 @@ if ( C4::Context->preference("AnonSuggestions") ) { template_name => "opac-suggestions.tmpl", query => $input, type => "opac", - authnotrequired => 1, + authnotrequired => ( C4::Context->preference("OpacPublic") ? 1 : 0 ), } ); if ( !$$suggestion{suggestedby} ) { - $$suggestion{suggestedby} = C4::Context->preference("AnonSuggestions"); + $$suggestion{suggestedby} = C4::Context->preference("AnonymousPatron"); } } else { @@ -66,17 +68,17 @@ if ($allsuggestions){ else { $$suggestion{suggestedby} ||= $borrowernumber unless ($allsuggestions); } -warn "bornum:",$borrowernumber; -use YAML; +# warn "bornum:",$borrowernumber; + my $suggestions_loop = &SearchSuggestion( $suggestion); if ( $op eq "add_confirm" ) { if (@$suggestions_loop>=1){ - #some suggestion are answering the request Donot Add - } + #some suggestion are answering the request Donot Add + } else { - $$suggestion{'suggestioncreatedon'}=C4::Dates->today; - $$suggestion{'branchcode'}=C4::Context->userenv->{"branch"}; + $$suggestion{'suggesteddate'}=C4::Dates->today; + $$suggestion{'branchcode'}= $input->param('branch') || C4::Context->userenv->{"branch"}; &NewSuggestion($suggestion); # empty fields, to avoid filter in "SearchSuggestion" $$suggestion{$_}='' foreach qw; @@ -84,6 +86,8 @@ if ( $op eq "add_confirm" ) { &SearchSuggestion( $suggestion ); } $op = 'else'; + print $input->redirect("/cgi-bin/koha/opac-suggestions.pl?op=else&submitted=1"); + exit; } if ( $op eq "delete_confirm" ) { @@ -92,30 +96,54 @@ if ( $op eq "delete_confirm" ) { &DelSuggestion( $borrowernumber, $delete_field ); } $op = 'else'; + print $input->redirect("/cgi-bin/koha/opac-suggestions.pl?op=else&deleted=1"); + exit; } -map{ $_->{'branchcodesuggestedby'}=GetBranchInfo($_->{'branchcodesuggestedby'})->[0]->{'branchname'}} @$suggestions_loop; -my $supportlist=GetSupportList(); +map{ $_->{'branchcodesuggestedby'}=GetBranchInfo($_->{'branchcodesuggestedby'})->[0]->{'branchname'}} @$suggestions_loop; +my $supportlist=GetSupportList(); foreach my $support(@$supportlist){ if ($$support{'imageurl'}){ - $$support{'imageurl'}= getitemtypeimagelocation( 'intranet', $$support{'imageurl'} ); + $$support{'imageurl'}= getitemtypeimagelocation( 'opac', $$support{'imageurl'} ); } else { delete $$support{'imageurl'} } } + +foreach my $suggestion(@$suggestions_loop) { + if($suggestion->{'suggestedby'} == $borrowernumber) { + $suggestion->{'showcheckbox'} = $borrowernumber; + } else { + $suggestion->{'showcheckbox'} = 0; + } + if($suggestion->{'patronreason'}){ + $suggestion->{'patronreason'} = GetKohaAuthorisedValueLib("OPAC_SUG",$suggestion->{'patronreason'},1); + } +} + +my $patron_reason_loop = GetAuthorisedValues("OPAC_SUG"); + +# Is the person allowed to choose their branch +if ( C4::Context->preference("AllowPurchaseSuggestionBranchChoice") ) { + my ( $borr ) = GetMemberDetails( $borrowernumber ); + +# pass the pickup branch along.... + my $branch = $input->param('branch') || $borr->{'branchcode'} || C4::Context->userenv->{branch} || '' ; + +# make branch selection options... + my $CGIbranchloop = GetBranchesLoop($branch); + $template->param( branch_loop => $CGIbranchloop ); +} + $template->param( %$suggestion, itemtypeloop=> $supportlist, suggestions_loop => $suggestions_loop, + patron_reason_loop => $patron_reason_loop, showall => $allsuggestions, - title => $title, - author => $author, - publishercode => $publishercode, - status => $status, "op_$op" => 1, - suggestionsview => 1 + suggestionsview => 1, ); - output_html_with_http_headers $input, $cookie, $template->output;