finishing modification of catalog screens

This commit is contained in:
chris 2000-03-28 03:47:39 +00:00
parent e58cc869eb
commit 651579305f
5 changed files with 206 additions and 36 deletions

View file

@ -14,7 +14,7 @@ $VERSION = 0.01;
&ordersearch &newbiblio &newbiblioitem &newsubject &newsubtitle &neworder
&newordernum &modbiblio &modorder &getsingleorder &invoice &receiveorder
&bookfundbreakdown &curconvert &updatesup &insertsup &makeitems &modbibitem
&getcurrencies);
&getcurrencies &modsubtitle &modsubject);
%EXPORT_TAGS = ( ); # eg: TAG => [ qw!name1 name2! ],
# your exported package globals go here,
@ -281,30 +281,65 @@ sub newbiblio {
}
sub modbiblio {
my ($bibnum,$title,$author,$copyright)=@_;
my ($bibnum,$title,$author,$copyright,$seriestitle,$serial,$unititle,$notes)=@_;
my $dbh=C4Connect;
$title=~ s/\'/\\\'/g;
$author=~ s/\'/\\\'/g;
my $query="update biblio set title='$title',
author='$author',copyrightdate='$copyright' where
author='$author',copyrightdate='$copyright',
seriestitle='$seriestitle',serial='$serial',unititle='$unititle',notes='$notes'
where
biblionumber=$bibnum";
my $sth=$dbh->prepare($query);
# print $query;
print $query;
$sth->execute;
$sth->finish;
$dbh->disconnect;
return($bibnum);
}
sub modsubtitle {
my ($bibnum,$subtitle)=@_;
my $dbh=C4Connect;
my $query="update bibliosubtitle set subtitle='$subtitle' where biblionumber=$bibnum";
print $query;
my $sth=$dbh->prepare($query);
print $query;
$sth->execute;
$sth->finish;
$dbh->disconnect;
}
sub modsubject {
my ($bibnum,@subject)=@_;
my $dbh=C4Connect;
my $count=@subject;
my $query="Delete from bibliosubject where biblionumber=$bibnum";
# print $query;
my $sth=$dbh->prepare($query);
print $query;
$sth->execute;
$sth->finish;
for (my $i=0;$i<$count;$i++){
$sth=$dbh->prepare("Insert into bibliosubject values ('$subject[$i]',$bibnum)");
print $subject[$i];
$sth->execute;
$sth->finish;
}
$dbh->disconnect;
}
sub modbibitem {
my ($bibitemnum,$itemtype,$isbn)=@_;
my ($bibitemnum,$itemtype,$isbn,$publishercode,$publicationdate,$classification,$dewey,$subclass,$illus,$pages,$volumeddesc)=@_;
my $dbh=C4Connect;
my $query="update biblioitems set itemtype='$itemtype',
isbn='$isbn' where
isbn='$isbn',publishercode='$publishercode',publicationyear='$publicationdate',
classification='$classification',dewey='$dewey',subclass='$subclass',illus='$illus',
pages='$pages',volumeddesc='$volumeddesc'
where
biblioitemnumber=$bibitemnum";
my $sth=$dbh->prepare($query);
# print $query;
print $query;
$sth->execute;
$sth->finish;
$dbh->disconnect;

View file

@ -13,7 +13,7 @@ $VERSION = 0.01;
@ISA = qw(Exporter);
@EXPORT = qw(&startpage &endpage &mktablehdr &mktableft &mktablerow &mklink
&startmenu &endmenu &mkheadr &center &endcenter &mkform &mkform2 &bold
&gotopage &mkformnotable);
&gotopage &mkformnotable &mkform3);
%EXPORT_TAGS = ( ); # eg: TAG => [ qw!name1 name2! ],
# your exported package globals go here,
@ -184,6 +184,55 @@ sub mkform{
$string=$string."</form>";
}
sub mkform3{
my ($action,%inputs)=@_;
my $string="<form action=$action method=post>\n";
$string=$string.mktablehdr();
my $key;
my @keys=sort keys %inputs;
my @order;
my $count=@keys;
my $i2=0;
while ( $i2<$count) {
my $value=$inputs{$keys[$i2]};
my @data=split('\t',$value);
my $posn = $data[2];
if ($data[0] eq 'hidden'){
$order[$posn]="<input type=hidden name=$keys[$i2] value=\"$data[1]\">\n";
} else {
my $text;
if ($data[0] eq 'radio') {
$text="<input type=radio name=$keys[$i2] value=$data[1]>$data[1]
<input type=radio name=$keys[$i2] value=$data[2]>$data[2]";
}
if ($data[0] eq 'text') {
$text="<input type=$data[0] name=$keys[$i2] value=\"$data[1]\">";
}
if ($data[0] eq 'textarea') {
$text="<textarea name=$keys[$i2] wrap=physical cols=40 rows=4>$data[1]</textarea>";
}
if ($data[0] eq 'select') {
$text="<select name=$keys[$i2]>";
my $i=1;
while ($data[$i] ne "") {
my $val = $data[$i+1];
$text = $text."<option value=$data[$i]>$val";
$i = $i+2;
}
$text=$text."</select>";
}
# $string=$string.mktablerow(2,'white',$keys[$i2],$text);
$order[$posn]=mktablerow(2,'white',$keys[$i2],$text);
}
$i2++;
}
my $temp=join("\n",@order);
$string=$string.$temp;
$string=$string.mktablerow(2,'white','<input type=submit>','<input type=reset>');
$string=$string.mktableft;
$string=$string."</form>";
}
sub mkformnotable{
my ($action,@inputs)=@_;
my $string="<form action=$action method=post>\n";

View file

@ -17,7 +17,7 @@ $VERSION = 0.01;
@EXPORT = qw(&CatSearch &BornameSearch &ItemInfo &KeywordSearch &subsearch
&itemdata &bibdata &GetItems &borrdata &getacctlist &itemnodata &itemcount
&OpacSearch &borrdata2 &NewBorrowerNumber &bibitemdata &borrissues
&getboracctrecord &ItemType &itemissues &FrontSearch);
&getboracctrecord &ItemType &itemissues &FrontSearch &subject &subtitle);
%EXPORT_TAGS = ( ); # eg: TAG => [ qw!name1 name2! ],
# your exported package globals go here,
@ -588,7 +588,7 @@ sub bibitemdata {
my $dbh=C4Connect;
my $query="Select * from biblio,biblioitems,itemtypes where biblio.biblionumber=
biblioitems.biblionumber and biblioitemnumber=$bibitem and
biblioitems.itemtype=itemtypes.itemtype";
biblioitems.itemtype=itemtypes.itemtype";
# print $query;
my $sth=$dbh->prepare($query);
$sth->execute;
@ -598,6 +598,42 @@ biblioitems.itemtype=itemtypes.itemtype";
return($data);
}
sub subject {
my ($bibnum)=@_;
my $dbh=C4Connect;
my $query="Select * from bibliosubject where biblionumber=$bibnum";
my $sth=$dbh->prepare($query);
$sth->execute;
my @results;
my $i=0;
while (my $data=$sth->fetchrow_hashref){
$results[$i]=$data;
$i++;
}
$sth->finish;
$dbh->disconnect;
return($i,\@results);
}
sub subtitle {
my ($bibnum)=@_;
my $dbh=C4Connect;
my $query="Select * from bibliosubtitle where biblionumber=$bibnum";
my $sth=$dbh->prepare($query);
$sth->execute;
my @results;
my $i=0;
while (my $data=$sth->fetchrow_hashref){
$results[$i]=$data;
$i++;
}
$sth->finish;
$dbh->disconnect;
return($i,\@results);
}
sub itemissues {
my ($bibitem)=@_;
my $dbh=C4Connect;

View file

@ -14,35 +14,51 @@ my $input = new CGI;
print $input->header;
my $bibitemnum=$input->param('bibitem');
my $data=bibitemdata($bibitemnum);
my ($count,$subject)=subject($data->{'biblionumber'});
my ($count2,$subtitle)=subtitle($data->{'biblionumber'});
#my ($analytictitle)=analytic($biblionumber,'t');
#my ($analyticauthor)=analytic($biblionumber,'a');
print startpage();
print startmenu();
my %inputs;
#have to get all subtitles, subjects
my $sub=$subject->[0]->{'subject'};
for (my $i=1;$i<$count;$i++){
$sub=$sub."|".$subject->[$i]->{'subject'};
}
#hash is set up with input name being the key then
#the value is a tab separated list, the first item being the input type
$inputs{'Author'}="text\t$data->{'author'}";
$inputs{'Title'}="text\t$data->{'title'}";
$inputs{'Unititle'}="text\t$data->{'unititle'}";
$inputs{'Notes'}="textarea\t$data->{'notes'}";
$inputs{'Serial'}="text\t$data->{'serial'}";
$inputs{'Series Title'}="text\t$data->{'seriestitle'}";
$inputs{'Copyright'}="text\t$data->{'copyrightdate'}";
#$inputs{'Volume'}="text\t$data->{'volume'}";
#$inputs{'Number'}="text\t$data->{'number'}";
$inputs{'Classification'}="text\t$data->{'classification'}";
$inputs{'Item Type'}="text\t$data->{'itemtype'}";
$inputs{'ISBN'}="text\t$data->{'isbn'}";
$inputs{'Dewey'}="text\t$data->{'dewey'}";
$inputs{'Sub Class'}="text\t$data->{'subclass'}";
$inputs{'Publication Year'}="text\t$data->{'publicationyear'}";
$inputs{'Volume'}="text\t$data->{'volumedesc'}";
$inputs{'Illustrations'}="text\t$data->{'illustration'}";
$inputs{'Pages'}="text\t$data->{'pages'}";
$inputs{'bibnum'}="hidden\t$data->{'biblionumber'}";
$inputs{'bibitemnum'}="hidden\t$data->{'biblioitemnumber'}";
print mkform('updatebiblio.pl',%inputs);
$inputs{'Author'}="text\t$data->{'author'}\t0";
$inputs{'Title'}="text\t$data->{'title'}\t1";
if ($data->{'dewey'} == 0){
$data->{'dewey'}='';
}
$inputs{'Class'}="text\t$data->{'classification'}$data->{'dewey'}$data->{'subclass'}\t2";
$inputs{'Item Type'}="text\t$data->{'itemtype'}\t3";
$inputs{'Subject'}="text\t$sub\t4";
$inputs{'Publisher'}="text\t$data->{'publishercode'}\t5";
$inputs{'Copyright date'}="text\t$data->{'copyrightdate'}\t6";
$inputs{'ISBN'}="text\t$data->{'isbn'}\t7";
$inputs{'Publication Year'}="text\t$data->{'publicationyear'}\t8";
$inputs{'Pages'}="text\t$data->{'pages'}\t9";
$inputs{'Illustrations'}="text\t$data->{'illustration'}\t10";
$inputs{'Series Title'}="text\t$data->{'seriestitle'}\t11";
$inputs{'Additional Author'}="text\t$data->{'addauthor'}\t12";
$inputs{'Subtitle'}="text\t$subtitle->[0]->{'subtitle'}\t13";
$inputs{'Unititle'}="text\t$data->{'unititle'}\t14";
$inputs{'Notes'}="textarea\t$data->{'notes'}\t15";
$inputs{'Serial'}="text\t$data->{'serial'}\t16";
$inputs{'Volume'}="text\t$data->{'volumeddesc'}\t17";
$inputs{'Analytic author'}="text\t\t18";
$inputs{'Analytic title'}="text\t\t19";
$inputs{'bibnum'}="hidden\t$data->{'biblionumber'}\t20";
$inputs{'bibitemnum'}="hidden\t$data->{'biblioitemnumber'}\t21";
print mkform3('updatebiblio.pl',%inputs);
#print mktablehdr();
#print mktableft();
print endmenu();

View file

@ -6,14 +6,48 @@ use strict;
use C4::Acquisitions;
my $input= new CGI;
#print $input->header;
#print $input->dump;
print $input->header;
print $input->dump;
my $title=$input->param('Title');
my $author=$input->param('Author');
my $bibnum=$input->param('bibnum');
my $copyright=$input->param('Copyright');
my $seriestitle=$input->param('Series');
my $serial=$input->param('Serial');
my $unititle=$input->param('Unititle');
my $notes=$input->param('Notes');
modbiblio($bibnum,$title,$author,$copyright);
modbiblio($bibnum,$title,$author,$copyright,$seriestitle,$serial,$unititle,$notes);
my $bibitemnum=$input->param('bibitemnum');
my $itemtype=$input->param('Item');
my $isbn=$input->param('ISBN');
my $publishercode=$input->param('Publisher');
my $publicationdate=$input->param('Publication');
my $class=$input->param('Class');
my $classification;
my $dewey;
my $subclass;
if ($itemtype eq 'PER'){
$classification=$class;
}
if ($class =~/0-9/){
}else{
$dewey='';
}
my $illus=$input->param('Illustrations');
my $pages=$input->param('Pages');
my $volumeddesc=$input->param('Volume');
modbibitem($bibitemnum,$itemtype,$isbn,$publishercode,$publicationdate,$classification,$dewey,$subclass,$illus,$pages,$volumeddesc);
my $subtitle=$input->param('Subtitle');
modsubtitle($bibnum,$subtitle);
my $subject=$input->param('Subject');
my @sub=split(/\|/,$subject);
#print @sub;
#
modsubject($bibnum,@sub);
print $input->redirect("detail.pl?type=intra&bib=$bibnum");