X-Git-Url: http://koha-dev.rot13.org:8081/gitweb/?a=blobdiff_plain;f=opac%2Fopac-alert-subscribe.pl;h=caeb123eeb14e95907b4016e4c8d8531120c3f48;hb=6e57e68820876c39053729159fdb6dc3e108a143;hp=f3761304cff4498b65238b8e3e13924ac2d53f49;hpb=bee8cebb41abc4cd3cf4a85159d31b35e00255e8;p=koha_fer diff --git a/opac/opac-alert-subscribe.pl b/opac/opac-alert-subscribe.pl index f3761304cf..caeb123eeb 100755 --- a/opac/opac-alert-subscribe.pl +++ b/opac/opac-alert-subscribe.pl @@ -1,63 +1,92 @@ #!/usr/bin/perl +# Copyright 2000-2002 Katipo Communications +# +# 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., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + + use strict; +use warnings; + use CGI; use C4::Auth; -use C4::Date; +use C4::Dates; use C4::Output; -use C4::Interface::CGI::Output; use C4::Context; use C4::Koha; use C4::Letters; -use C4::Bull; -# use C4::Search; -use HTML::Template; +use C4::Serials; + my $query = new CGI; -my $op = $query->param('op'); -my $dbh = C4::Context->dbh; +my $op = $query->param('op') || ''; +my $dbh = C4::Context->dbh; my $sth; -my ($template, $loggedinuser, $cookie); -my $externalid = $query->param('externalid'); -my $alerttype = $query->param('alerttype'); +my ( $template, $loggedinuser, $cookie ); +my $externalid = $query->param('externalid'); +my $alerttype = $query->param('alerttype') || ''; my $biblionumber = $query->param('biblionumber'); -($template, $loggedinuser, $cookie) - = get_template_and_user({template_name => "opac-alert-subscribe.tmpl", - query => $query, - type => "opac", - authnotrequired => 1, - debug => 1, - }); - -if ($op eq 'alert_confirmed') { - addalert($loggedinuser,$alerttype,$externalid); - if ($alerttype eq 'issue') { - print $query->redirect("opac-serial-issues.pl?biblionumber=$biblionumber"); - exit; - } -} elsif ($op eq 'cancel_confirmed') { - my $alerts =getalert($loggedinuser,$alerttype,$externalid); - foreach (@$alerts) { # we are supposed to have only 1 result, but just in case... - delalert($_->{alertid}); - } - if ($alerttype eq 'issue') { - print $query->redirect("opac-serial-issues.pl?biblionumber=$biblionumber"); - exit; - } - -} else { - if ($alerttype eq 'issue') { # alert for subscription issues - my $subscription = &getsubscription($externalid); - $template->param("typeissue$op" => 1, - bibliotitle => $subscription->{bibliotitle}, - notes => $subscription->{notes}, - externalid => $externalid, - biblionumber => $biblionumber, - ); - } else { - } - +( $template, $loggedinuser, $cookie ) = get_template_and_user( + { + template_name => "opac-alert-subscribe.tmpl", + query => $query, + type => "opac", + authnotrequired => 0, # user must logged in to request + # subscription notifications + debug => 1, + } +); + +if ( $op eq 'alert_confirmed' ) { + addalert( $loggedinuser, $alerttype, $externalid ); + if ( $alerttype eq 'issue' ) { + print $query->redirect( + "opac-serial-issues.pl?biblionumber=$biblionumber"); + exit; + } +} +elsif ( $op eq 'cancel_confirmed' ) { + my $alerts = getalert( $loggedinuser, $alerttype, $externalid ); + warn "CANCEL confirmed : $loggedinuser, $alerttype, $externalid".Data::Dumper::Dumper( $alerts ); + foreach (@$alerts) + { # we are supposed to have only 1 result, but just in case... + delalert( $_->{alertid} ); + } + if ( $alerttype eq 'issue' ) { + print $query->redirect( + "opac-serial-issues.pl?biblionumber=$biblionumber"); + exit; + } + +} +else { + if ( $alerttype eq 'issue' ) { # alert for subscription issues + my $subscription = &GetSubscription($externalid); + $template->param( + "typeissue$op" => 1, + bibliotitle => $subscription->{bibliotitle}, + notes => $subscription->{notes}, + externalid => $externalid, + biblionumber => $biblionumber, + ); + } + else { + } + } output_html_with_http_headers $query, $cookie, $template->output;