X-Git-Url: http://koha-dev.rot13.org:8081/gitweb/?a=blobdiff_plain;f=opac%2Fopac-suggestions.pl;h=32b5c3d221c01de0187bf2c313bae2b826936651;hb=51a6f0958926fcbdf48e97d386a2463a9c113d73;hp=cd512de0790ac57960298d39fd1126acb1e011cb;hpb=8802bbf5fe6c0b35ad4d6e00293eb102a48b92b4;p=koha_fer diff --git a/opac/opac-suggestions.pl b/opac/opac-suggestions.pl index cd512de079..32b5c3d221 100755 --- a/opac/opac-suggestions.pl +++ b/opac/opac-suggestions.pl @@ -11,15 +11,16 @@ # 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 +# You should have received a copy of the GNU General Public License along +# with Koha; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. use strict; 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,24 +96,57 @@ 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 $userbranch = ''; + if (C4::Context->userenv && C4::Context->userenv->{'branch'}) { + $userbranch = C4::Context->userenv->{'branch'}; + } + my $branch = $input->param('branch') || $borr->{'branchcode'} || $userbranch || '' ; + +# make branch selection options... + my $branchloop = GetBranchesLoop($branch); + $template->param( branchloop => $branchloop ); +} + $template->param( %$suggestion, itemtypeloop=> $supportlist, suggestions_loop => $suggestions_loop, + patron_reason_loop => $patron_reason_loop, showall => $allsuggestions, "op_$op" => 1, - suggestionsview => 1 + suggestionsview => 1, ); output_html_with_http_headers $input, $cookie, $template->output;