X-Git-Url: http://git.rot13.org/?a=blobdiff_plain;f=serials%2Fsubscription-renew.pl;h=280b7763570a3cb34034774913a067824a668a4c;hb=8c60cd41a84453f4edd7a8e8752860066fac6d32;hp=ab6a01991209d1d94474cf28b979ef2c4834bbc4;hpb=d71a9d3d5b0405eabb3213fd2c4962a74283aa09;p=koha.git diff --git a/serials/subscription-renew.pl b/serials/subscription-renew.pl index ab6a019912..280b776357 100755 --- a/serials/subscription-renew.pl +++ b/serials/subscription-renew.pl @@ -1,5 +1,4 @@ #!/usr/bin/perl -# WARNING: 4-character tab stops here # Copyright 2000-2002 Katipo Communications # @@ -14,11 +13,10 @@ # 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. -# $Id$ =head1 NAME @@ -46,12 +44,13 @@ Id of the subscription this script has to renew =cut use strict; -require Exporter; +use warnings; + use CGI; +use Carp; use C4::Koha; use C4::Auth; -use C4::Date; - +use C4::Dates qw/format_date/; use C4::Context; use C4::Auth; use C4::Output; @@ -60,7 +59,8 @@ use C4::Serials; my $query = new CGI; my $dbh = C4::Context->dbh; -my $op = $query->param('op'); +my $mode = $query->param('mode') || q{}; +my $op = $query->param('op') || 'display'; my $subscriptionid = $query->param('subscriptionid'); my $done = 0; # for after form has been submitted my ( $template, $loggedinuser, $cookie ) = get_template_and_user( @@ -69,27 +69,28 @@ my ( $template, $loggedinuser, $cookie ) = get_template_and_user( query => $query, type => "intranet", authnotrequired => 0, - flagsrequired => { serials => 1 }, + flagsrequired => { serials => 'renew_subscription' }, debug => 1, } ); - if ( $op eq "renew" ) { ReNewSubscription( $subscriptionid, $loggedinuser, - $query->param('startdate'), $query->param('numberlength'), + C4::Dates->new($query->param('startdate'))->output('iso'), $query->param('numberlength'), $query->param('weeklength'), $query->param('monthlength'), $query->param('note') ); - print $query->redirect('/cgi-bin/koha/serials/subscription-detail.pl?subscriptionid='.$subscriptionid); - exit; } my $subscription = GetSubscription($subscriptionid); +if ($subscription->{'cannotedit'}){ + carp "Attempt to renew subscription $subscriptionid by ".C4::Context->userenv->{'id'}." not allowed"; + print $query->redirect("/cgi-bin/koha/serials/subscription-detail.pl?subscriptionid=$subscriptionid"); +} $template->param( startdate => format_date( - GetExpirationDate($subscriptionid) + $subscription->{enddate} || POSIX::strftime( "%Y-%m-%d", localtime ) ), numberlength => $subscription->{numberlength}, @@ -98,12 +99,8 @@ $template->param( subscriptionid => $subscriptionid, bibliotitle => $subscription->{bibliotitle}, $op => 1, - done => $done, + popup => ($mode eq 'popup'), ); # Print the page output_html_with_http_headers $query, $cookie, $template->output; - -# Local Variables: -# tab-width: 4 -# End: