X-Git-Url: http://git.rot13.org/?a=blobdiff_plain;f=acqui%2Fneworderempty.pl;h=90b4732c81111add961223d02d6b82f0ef8c3404;hb=d85fa9c5fbc1e73e63c830a019331041e54c597d;hp=d48255443b943779b8f5e9dff6db4d3007bcc02c;hpb=3de13a0f6d711eeeaad1400ea1277028ce5e1f9f;p=koha.git diff --git a/acqui/neworderempty.pl b/acqui/neworderempty.pl index d48255443b..90b4732c81 100755 --- a/acqui/neworderempty.pl +++ b/acqui/neworderempty.pl @@ -91,7 +91,7 @@ use C4::Search qw/FindDuplicate/; #needed for z3950 import: use C4::ImportBatch qw/GetImportRecordMarc SetImportRecordStatus/; -my $input = new CGI; +our $input = new CGI; my $booksellerid = $input->param('booksellerid'); # FIXME: else ERROR! my $budget_id = $input->param('budget_id') || 0; my $title = $input->param('title'); @@ -99,8 +99,8 @@ my $author = $input->param('author'); my $publicationyear = $input->param('publicationyear'); my $bookseller = GetBookSellerFromId($booksellerid); # FIXME: else ERROR! my $ordernumber = $input->param('ordernumber') || ''; -my $biblionumber = $input->param('biblionumber'); -my $basketno = $input->param('basketno'); +our $biblionumber = $input->param('biblionumber'); +our $basketno = $input->param('basketno'); my $suggestionid = $input->param('suggestionid'); my $close = $input->param('close'); my $uncertainprice = $input->param('uncertainprice'); @@ -110,7 +110,7 @@ my $new = 'no'; my $budget_name; -my ( $template, $loggedinuser, $cookie ) = get_template_and_user( +our ( $template, $loggedinuser, $cookie, $userflags ) = get_template_and_user( { template_name => "acqui/neworderempty.tmpl", query => $input, @@ -121,18 +121,18 @@ my ( $template, $loggedinuser, $cookie ) = get_template_and_user( } ); -my $marcflavour = C4::Context->preference('marcflavour'); +our $marcflavour = C4::Context->preference('marcflavour'); if(!$basketno) { my $order = GetOrder($ordernumber); $basketno = $order->{'basketno'}; } -my $basket = GetBasket($basketno); +our $basket = GetBasket($basketno); my $contract = &GetContract($basket->{contractnumber}); #simple parameters reading (all in one :-) -my $params = $input->Vars; +our $params = $input->Vars; my $listprice=0; # the price, that can be in MARC record if we have one if ( $ordernumber eq '' and defined $params->{'breedingid'}){ #we want to import from the breeding reservoir (from a z3950 search) @@ -251,8 +251,9 @@ my ( $flags, $homebranch )= ($borrower->{'flags'},$borrower->{'branchcode'}); my $budget = GetBudget($budget_id); # build budget list my $budget_loop = []; -my $budgets = GetBudgetHierarchy(q{},$borrower->{branchcode},$borrower->{borrowernumber}); +my $budgets = GetBudgetHierarchy; foreach my $r (@{$budgets}) { + next unless (CanUserUseBudget($borrower, $r, $userflags)); if (!defined $r->{budget_amount} || $r->{budget_amount} == 0) { next; } @@ -264,6 +265,8 @@ foreach my $r (@{$budgets}) { }; } +@{$budget_loop} = + sort { uc( $a->{b_txt}) cmp uc( $b->{b_txt}) } @{$budget_loop}; if ($close) { $budget_id = $data->{'budget_id'}; @@ -278,8 +281,6 @@ if ($budget) { # its a mod .. } } elsif(@{$budgets}){ $CGIsort1 = GetAuthvalueDropbox( @$budgets[0]->{'sort1_authcat'}, '' ); -}else{ - $CGIsort1 = GetAuthvalueDropbox( '', '' ); } # if CGIsort is successfully fetched, the use it @@ -297,8 +298,6 @@ if ($budget) { } } elsif(@{$budgets}) { $CGIsort2 = GetAuthvalueDropbox( @$budgets[0]->{sort2_authcat}, '' ); -}else{ - $CGIsort2 = GetAuthvalueDropbox( '', '' ); } if ($CGIsort2) { @@ -332,6 +331,13 @@ $template->param( budget_name => $budget_name ) if ($close); +# get option values for gist syspref +my @gst_values = map { + option => $_ +}, split( '\|', C4::Context->preference("gist") ); + +my $cur = GetCurrency(); + $template->param( existing => $biblionumber, ordernumber => $ordernumber, @@ -351,18 +357,21 @@ $template->param( suggestionid => $suggestion->{suggestionid}, surnamesuggestedby => $suggestion->{surnamesuggestedby}, firstnamesuggestedby => $suggestion->{firstnamesuggestedby}, - biblionumber => $biblionumber, - uncertainprice => $data->{'uncertainprice'}, - authorisedbyname => $borrower->{'firstname'} . " " . $borrower->{'surname'}, - biblioitemnumber => $data->{'biblioitemnumber'}, - discount_2dp => sprintf( "%.2f", $bookseller->{'discount'}) , # for display - discount => $bookseller->{'discount'}, + biblionumber => $biblionumber, + uncertainprice => $data->{'uncertainprice'}, + authorisedbyname => $borrower->{'firstname'} . " " . $borrower->{'surname'}, + biblioitemnumber => $data->{'biblioitemnumber'}, + discount_2dp => sprintf( "%.2f", $bookseller->{'discount'} ) , # for display + discount => $bookseller->{'discount'}, + orderdiscount_2dp => sprintf( "%.2f", $data->{'discount'} || 0 ), + orderdiscount => $data->{'discount'}, listincgst => $bookseller->{'listincgst'}, invoiceincgst => $bookseller->{'invoiceincgst'}, name => $bookseller->{'name'}, cur_active_sym => $active_currency->{'symbol'}, cur_active => $active_currency->{'currency'}, loop_currencies => \@loop_currency, + currency_rate => $cur->{rate}, orderexists => ( $new eq 'yes' ) ? 0 : 1, title => $data->{'title'}, author => $data->{'author'}, @@ -370,24 +379,24 @@ $template->param( editionstatement => $data->{'editionstatement'}, budget_loop => $budget_loop, isbn => $data->{'isbn'}, + ean => $data->{'ean'}, seriestitle => $data->{'seriestitle'}, itemtypeloop => \@itemtypes, quantity => $data->{'quantity'}, quantityrec => $data->{'quantity'}, rrp => $data->{'rrp'}, - listprice => sprintf("%.2f", $data->{'listprice'}||$data->{'price'}||$listprice), - total => sprintf("%.2f", ($data->{'ecost'}||0)*($data->{'quantity'}||0) ), - ecost => $data->{'ecost'}, - unitprice => sprintf("%.2f", $data->{'unitprice'}), + gst_values => \@gst_values, + gstrate => $data->{gstrate} ? $data->{gstrate}+0.0 : $bookseller->{gstrate} ? $bookseller->{gstrate}+0.0 : 0, + gstreg => $bookseller->{'gstreg'}, + listprice => sprintf( "%.2f", $data->{listprice} || $data->{price} || $listprice), + total => sprintf( "%.2f", ($data->{ecost} || 0) * ($data->{'quantity'} || 0) ), + ecost => sprintf( "%.2f", $data->{ecost} || 0), + unitprice => sprintf( "%.2f", $data->{unitprice} || 0), notes => $data->{'notes'}, publishercode => $data->{'publishercode'}, barcode_subfield => $barcode_subfield, - import_batch_id => $import_batch_id, - -# CHECKME: gst-stuff needs verifing, mason. - gstrate => $bookseller->{'gstrate'} // C4::Context->preference("gist") // 0, - gstreg => $bookseller->{'gstreg'}, + (uc(C4::Context->preference("marcflavour"))) => 1 ); output_html_with_http_headers $input, $cookie, $template->output; @@ -442,7 +451,7 @@ sub MARCfindbreeding { if ( C4::Context->preference("z3950NormalizeAuthor") and C4::Context->preference("z3950AuthorAuthFields") ) { - my ( $tag, $subfield ) = GetMarcFromKohaField("biblio.author"); + my ( $tag, $subfield ) = GetMarcFromKohaField("biblio.author", ''); # my $summary = C4::Context->preference("z3950authortemplate"); my $auth_fields = @@ -519,6 +528,7 @@ sub Load_Duplicate { booksellerid => $basket->{'booksellerid'}, breedingid => $params->{'breedingid'}, duplicatetitle => $duplicatetitle, + (uc(C4::Context->preference("marcflavour"))) => 1 ); output_html_with_http_headers $input, $cookie, $template->output;