serials-edit.pl
[koha.git] / serials / serials-home.pl
1 #!/usr/bin/perl
2
3 # Copyright 2000-2002 Katipo Communications
4 #
5 # This file is part of Koha.
6 #
7 # Koha is free software; you can redistribute it and/or modify it under the
8 # terms of the GNU General Public License as published by the Free Software
9 # Foundation; either version 2 of the License, or (at your option) any later
10 # version.
11 #
12 # Koha is distributed in the hope that it will be useful, but WITHOUT ANY
13 # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
14 # A PARTICULAR PURPOSE.  See the GNU General Public License for more details.
15 #
16 # You should have received a copy of the GNU General Public License along with
17 # Koha; if not, write to the Free Software Foundation, Inc., 59 Temple Place,
18 # Suite 330, Boston, MA  02111-1307 USA
19
20 # $Id$
21
22 =head1 NAME
23
24 serials-home.pl
25
26 =head1 DESCRIPTION
27
28 this script is the main page for serials/
29
30 =head1 PARAMETERS
31
32 =over 4
33
34 =item title
35
36 =item ISSN
37
38 =item biblionumber
39
40 =back
41
42 =cut
43
44 use strict;
45 use CGI;
46 use C4::Auth;
47 use C4::Serials;
48 use C4::Output;
49 use C4::Context;
50
51 my $query         = new CGI;
52 my $title         = $query->param('title_filter');
53 my $ISSN          = $query->param('ISSN_filter');
54 my $routing       = $query->param('routing');
55 my $searched      = $query->param('searched');
56 my $biblionumber  = $query->param('biblionumber');
57
58 my @serialseqs = $query->param('serialseq');
59 my @planneddates = $query->param('planneddate');
60 my @publisheddates = $query->param('publisheddate');
61 my @status = $query->param('status');
62 my @notes = $query->param('notes');
63
64 my ( $template, $loggedinuser, $cookie ) = get_template_and_user(
65     {
66         template_name   => "serials/serials-home.tmpl",
67         query           => $query,
68         type            => "intranet",
69         authnotrequired => 0,
70         flagsrequired   => { serials => 1 },
71         debug           => 1,
72     }
73 );
74
75 if (@serialseqs){
76   my @information;
77   my $index;
78   foreach my $seq (@serialseqs){
79     if ($seq){
80       ### FIXME  This limitation that a serial must be given a title may not be very efficient for some library who do not update serials titles.
81       push @information,
82         { serialseq=>$seq,
83           publisheddate=>$publisheddates[$index],   
84           planneddate=>$planneddates[$index],   
85           notes=>$notes[$index],   
86           status=>$status[$index]
87         }     
88     }   
89     $index++; 
90   } 
91   $template->param('information'=>\@information);
92 }
93 my @subscriptions;
94 if ($searched){
95     @subscriptions = GetSubscriptions( $title, $ISSN, $biblionumber );
96 }
97
98 # to toggle between create or edit routing list options
99 if ($routing) {
100     for ( my $i = 0 ; $i < @subscriptions ; $i++ ) {
101         my $checkrouting =
102           check_routing( $subscriptions[$i]->{'subscriptionid'} );
103         $subscriptions[$i]->{'routingedit'} = $checkrouting;
104     }
105 }
106
107 $template->param(
108     subscriptions => \@subscriptions,
109     title_filter  => $title,
110     ISSN_filter   => $ISSN,
111     done_searched => $searched,
112     routing       => $routing,
113 );
114 output_html_with_http_headers $query, $cookie, $template->output;