finishing modification of catalog screens
This commit is contained in:
parent
e58cc869eb
commit
651579305f
5 changed files with 206 additions and 36 deletions
|
@ -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;
|
||||
|
|
51
C4/Output.pm
51
C4/Output.pm
|
@ -13,7 +13,7 @@ $VERSION = 0.01;
|
|||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw(&startpage &endpage &mktablehdr &mktableft &mktablerow &mklink
|
||||
&startmenu &endmenu &mkheadr ¢er &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";
|
||||
|
|
40
C4/Search.pm
40
C4/Search.pm
|
@ -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;
|
||||
|
|
62
modbib.pl
62
modbib.pl
|
@ -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();
|
||||
|
|
|
@ -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");
|
||||
|
|
Loading…
Reference in a new issue