Koha/newimember.pl
acli 7d7deb7b36 Moved the cardnumber generation logic out of memberentry.pl; new module
C4::Members created to hold this logic

Fixed syntax error in newimember.pl
Make newimember.pl use the cardnumber generation logic (bug 206)
Updated newimember.pl to use get_template_and_user
Other minor mods to newimember.pl; new tab size noted
2003-02-10 07:14:16 +00:00

111 lines
2.8 KiB
Perl
Executable file

#!/usr/bin/perl
# Note: This file now uses standard 8-space tabs
# $Id$
#script to print confirmation screen,
#then if accepted calls itself to insert data
#modified 2002/12/16 by hdl@ifrance.com : Templating
#the "parent" is imemberentry.pl
# Copyright 2000-2003 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., 59 Temple Place,
# Suite 330, Boston, MA 02111-1307 USA
use strict;
use C4::Output;
use C4::Input;
use C4::Auth;
use C4::Interface::CGI::Output;
use C4::Members;
use CGI;
use Date::Manip;
use HTML::Template;
my %env;
my $input = new CGI;
#get varibale that tells us whether to show confirmation page
#or insert data
my $insert=$input->param('insert');
my ($template, $loggedinuser, $cookie) = get_template_and_user({
template_name => "newimember.tmpl",
query => $input,
type => "intranet",
authnotrequired => 0,
flagsrequired => {borrowers => 1},
debug => 1,
});
#get rest of data
my %data;
my @names=$input->param;
foreach my $key (@names){
$data{$key}=$input->param($key);
}
# FIXME: $ok means "not ok", but $valid really means "valid"
my $ok=0;
my $string="The following compulsary fields have been left blank. Please push the back button
and try again<p>";
if ($data{'cardnumber_institution'} !~ /\S/){
$string.="Cardnumber<br>";
$ok=1;
}
if ($data{'institution_name'} !~ /\S/){
$string.="Institution Name<br>";
$ok=1;
}
if ($data{'address'} !~ /\S/){
$string.="Postal Address<br>";
$ok=1;
}
if ($data{'city'} !~ /\S/){
$string.="City<br>";
$ok=1;
}
if ($data{'contactname'} !~ /\S/){
$string.="Contact Name";
$ok=1;
}
$template->param( missingloop => ($ok==1));
$template->param( string => $string);
if ($ok !=1) {
$data{'cardnumber_institution'} = C4::Members::fixup_cardnumber
($data{'cardnumber_institution'});
my $valid=checkdigit(\%env,$data{"cardnumber_institution"});
$template->param( invalid => ($valid !=1));
if ($valid) {
my @inputs;
while (my ($key, $value) = each %data) {
push(@inputs, { 'key' => $key,
'value' => CGI::escapeHTML($value) });
}
$template->param(inputsloop => \@inputs);
}
}
output_html_with_http_headers $input, $cookie, $template->output;
# Local Variables:
# tab-width: 8
# End: