use Memoize because Memcache::Memoize is slow for me
[koha.git] / acqui / addorder.pl
index ebb1351..d7f7e96 100755 (executable)
@@ -16,9 +16,9 @@
 # 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.
 
 
 =head1 NAME
@@ -30,17 +30,21 @@ addorder.pl
 this script allows to add an order.
 It is called by :
 
+=over
+
 =item neworderbiblio.pl to add an order from nothing.
 
 =item neworderempty.pl to add an order from an existing biblio.
 
 =item newordersuggestion.pl to add an order from an existing suggestion.
 
+=back
+
 =head1 CGI PARAMETERS
 
 All of the cgi parameters below are related to the new order.
 
-=over 4
+=over
 
 =item C<ordernumber>
 the number of this new order.
@@ -148,6 +152,7 @@ my ( $template, $loggedinuser, $cookie ) = get_template_and_user(
 # get CGI parameters
 my $orderinfo                                  = $input->Vars;
 $orderinfo->{'list_price'}    ||=  0;
+$orderinfo->{'uncertainprice'} ||= 0;
 #my $ordernumber        = $input->param('ordernumber');
 #my $basketno      = $input->param('basketno');
 #my $booksellerid  = $input->param('booksellerid');
@@ -185,21 +190,24 @@ my $user          = $input->remote_user;
 # create if $quantity>=0 and $existing='no'
 # modify if $quantity>=0 and $existing='yes'
 # delete if $quantity has been set to 0 by the librarian
+# delete biblio if delbiblio has been set to 1 by the librarian
 my $bibitemnum;
 if ( $orderinfo->{quantity} ne '0' ) {
     #TODO:check to see if biblio exists
     unless ( $$orderinfo{biblionumber} ) {
-
         #if it doesnt create it
         my $record = TransformKohaToMarc(
             {
                 "biblio.title"                => "$$orderinfo{title}",
-                "biblio.author"               => "$$orderinfo{author}",
-                "biblio.series"               => $$orderinfo{series}          ? $$orderinfo{series}        : "",
+                "biblio.author"               => $$orderinfo{author}          ? $$orderinfo{author}        : "",
+                "biblio.seriestitle"          => $$orderinfo{series}          ? $$orderinfo{series}        : "",
                 "biblioitems.isbn"            => $$orderinfo{isbn}            ? $$orderinfo{isbn}          : "",
                 "biblioitems.publishercode"   => $$orderinfo{publishercode}   ? $$orderinfo{publishercode} : "",
                 "biblioitems.publicationyear" => $$orderinfo{publicationyear} ? $$orderinfo{publicationyear}: "",
+                "biblio.copyrightdate"        => $$orderinfo{publicationyear} ? $$orderinfo{publicationyear}: "",
+                "biblioitems.itemtype"        => $$orderinfo{itemtype} ? $$orderinfo{itemtype} : "",
             });
+
         # create the record in catalogue, with framework ''
         my ($biblionumber,$bibitemnum) = AddBiblio($record,'');
         # change suggestion status if applicable
@@ -264,6 +272,9 @@ if ( $orderinfo->{quantity} ne '0' ) {
 else { # qty=0, delete the line
     my $biblionumber = $input->param('biblionumber');
     DelOrder( $biblionumber, $$orderinfo{ordernumber} );
+    if ($orderinfo->{delbiblio} == 1){
+     DelBiblio($biblionumber);
+    }
 }
 my $basketno=$$orderinfo{basketno};
 my $booksellerid=$$orderinfo{booksellerid};