Fixes for basket closing:
authorJohn Soros <john.soros@biblibre.com>
Thu, 9 Jul 2009 14:03:01 +0000 (16:03 +0200)
committerHenri-Damien LAURENT <henridamien.laurent@biblibre.com>
Wed, 30 Sep 2009 09:30:27 +0000 (11:30 +0200)
 - I user has basket grouping permissions, don't display javascript popup for confirmation
 - if user has basket grouping permissions, after closing the basket redirect him to a page which asks which basketgroup to affect the basket to (with possibility to create a new basketgroup)
  - when done with this, redirect him to basketgrouping.pl to be able to print the basketgroup at once
 - factor out basket closing code from booksellers.pl (what was it doing there anyways?)

acqui/basket.pl
acqui/basketgroup.pl
acqui/booksellers.pl
koha-tmpl/intranet-tmpl/prog/en/modules/acqui/basket.tmpl
koha-tmpl/intranet-tmpl/prog/en/modules/acqui/basketgroup.tmpl

index 07aec1d..811702c 100755 (executable)
@@ -153,6 +153,41 @@ if ( $op eq 'delete_confirm' ) {
         address4             => $bookseller->{'address4'},
         count               =>     $count,
       );
+} elsif ($op eq 'attachbasket' && $template->{'param_map'}->{'CAN_user_acquisition_group_manage'} == 1) {
+    my $basketgroups = GetBasketgroups($basket->{booksellerid});
+    for (my $i=0; $i < scalar(@$basketgroups); $i++) {
+        if (@$basketgroups[$i]->{closed}) {
+            splice(@$basketgroups, $i, 1);
+            $i--;
+        } elsif ($basket->{basketgroupid} == @$basketgroups[$i]->{id}){
+            @$basketgroups[$i]->{default} = 1;
+        }
+    }
+    $template->param(
+        basketgroups    => $basketgroups,
+        booksellerid    => $booksellerid,
+        basketno        => $basket->{'basketno'},
+        basketname      => $basket->{'basketname'},
+        name            => $bookseller->{'name'},
+        selectbasketg    => "1"
+    );
+    # check if we have to "close" a basket before building page
+} elsif ($op eq 'close') {
+    my $basket = $query->param('basketno');
+    $basket =~ /^\d+$/ and CloseBasket($basket);
+    if ($template->{'param_map'}->{'CAN_user_acquisition_group_manage'} == 1){
+        print $query->redirect('/cgi-bin/koha/acqui/basket.pl?basketno='.$basket.'&op=attachbasket');
+        exit;
+    } else {
+        print $query->redirect('/cgi-bin/koha/acqui/booksellers.pl?supplierid='.$booksellerid);
+        exit;
+    }
+} elsif ($query->param('op') eq 'reopen') {
+    my $basket;
+    $basket->{basketno} = $query->param('basketno');
+    $basket->{closedate} = undef;
+    ModBasket($basket);
+    print $query->redirect('/cgi-bin/koha/acqui/basket.pl?basketno='.$basket->{'basketno'})
 } else {
     # get librarian branch...
     if ( C4::Context->preference("IndependantBranches") ) {
index e8027a8..56526e7 100755 (executable)
@@ -298,6 +298,38 @@ if (! $op ) {
     my $pdf = printpdf($basketgroup, $bookseller, $baskets, $branch, \%orders, $bookseller->{gstrate} || C4::Context->preference("gist")) || die "pdf generation failed";
     print $pdf;
     exit;
+} elsif ( $op eq 'attachbasket') {
+    # TODO: create basketgroup and attach basket to it?
+    my $basketgroup = {};
+    $basketgroup->{'name'} = $input->param('basketgroupname');
+    $basketgroup->{'booksellerid'} = $input->param('booksellerid');
+    my $basketgroupid;
+    my $basketno = $input->param('basketno');
+    warn "basketgroupname", $basketgroup->{'name'};
+    if ($basketgroup->{'name'}) {
+        $basketgroupid = NewBasketgroup($basketgroup);
+    } else {
+        $basketgroupid = $input->param('basketgroupid');
+    }
+    if ($input->param('closebasketgroup')){
+        #we override $basketgroup on purpose here
+        my $basketgroup= {};
+        $basketgroup->{'closed'} = 1;
+        $basketgroup->{'id'} = $basketgroupid;
+        ModBasketgroup($basketgroup)
+    }
+    my $basket = {};
+    $basket->{'basketno'} = $basketno;
+    $basket->{'basketgroupid'} = $basketgroupid;
+    ModBasket($basket);
+    $basketgroup = GetBasketgroup($basketgroupid);
+    my $baskets = GetBasketsByBasketgroup($basketgroupid);
+    my $bookseller = &GetBookSellerFromId($booksellerid);
+    my @basketgroups;
+    push(@basketgroups, $basketgroup);
+    $template->param(displayclosedbgs => 1,
+                     booksellerid => $booksellerid);
+    displaybasketgroups(\@basketgroups, $bookseller, $baskets);
 }
 #prolly won't use all these, maybe just use print, the rest can be done inside validate
 output_html_with_http_headers $input, $cookie, $template->output;
index 0d534f4..ad0bf0b 100755 (executable)
@@ -92,16 +92,6 @@ if ($count == 1){
                id => $suppliers[0]->{'id'}
        );
 }
-# check if we have to "close" a basket before building page
-if ($query->param('op') eq 'close') {
-       my $basket = $query->param('basketno');
-       $basket =~ /^\d+$/ and CloseBasket($basket);
-} elsif ($query->param('op') eq 'reopen') {
-    my $basket;
-    $basket->{basketno} = $query->param('basketno');
-    $basket->{closedate} = undef;
-    ModBasket($basket);
-}
 
 #build result page
 my @loop_suppliers;
index a1a9acb..52141e9 100644 (file)
@@ -7,7 +7,7 @@
             function confirm_close() {
                 var is_confirmed = confirm(_('Are you sure you want to close this basket?'));
                 if (is_confirmed) {
-                    window.location = "/cgi-bin/koha/acqui/booksellers.pl?op=close&basketno=<!-- TMPL_VAR NAME="basketno" -->&supplierid=<!-- TMPL_VAR name="booksellerid" -->";
+                    window.location = "<!-- TMPL_VAR name="script_name" -->?op=close&basketno=<!-- TMPL_VAR NAME="basketno" -->";
                 }
             }
 //]]>
@@ -19,7 +19,7 @@
             function confirm_reopen() {
                 var is_confirmed = confirm(_('Are you sure you want to reopen this basket?'));
                 if (is_confirmed) {
-                    window.location = "/cgi-bin/koha/acqui/booksellers.pl?op=reopen&basketno=<!-- TMPL_VAR NAME="basketno" -->&supplierid=<!-- TMPL_VAR name="booksellerid" -->";
+                    window.location = "<!-- TMPL_VAR name="script_name" -->?op=reopen&basketno=<!-- TMPL_VAR name="basketno" -->";
                 }
             }
 //]]>
    <div id="bd">
        <div id="yui-main">
        <div class="yui-b">
-       
-         <!-- TMPL_UNLESS name="closedate" -->
-             <div id="toolbar">
-                 <script type="text/javascript">
-                     //<![CDATA[
-                     // prepare DOM for YUI Toolbar
-                      $(document).ready(function() {
-                         yuiToolbar();
-                      });
-                     // YUI Toolbar Functions
-                     function yuiToolbar() {
-                         <!-- TMPL_IF name="unclosable" -->
-                             new YAHOO.widget.Button("uncertpricesbutton");
-                             new YAHOO.widget.Button("closebutton", {disabled:true});
-                         <!-- TMPL_ELSE -->
-                             new YAHOO.widget.Button("closebutton");
-                         <!-- /TMPL_IF -->
-                         new YAHOO.widget.Button("basketheadbutton");
-                         new YAHOO.widget.Button("delbasketbutton");
-                     }
-                     //]]>
-                 </script>
-                 <ul id="toolbar-list" class="toolbar">
-                 <li><a href="basketheader.pl?basketno=<!-- TMPL_VAR NAME="basketno" -->&op=add_form" class="button" id="basketheadbutton">Edit basket header information</a></li>
-                 <li><a href="<!-- TMPL_VAR NAME="script_name" -->?op=del_basket&basketno=<!-- TMPL_VAR NAME="basketno" -->&booksellerid=<!-- TMPL_VAR NAME="booksellerid" -->" class="button" id="delbasketbutton">Delete this basket</a></li>
-                 <!-- TMPL_IF name="unclosable" -->
-                     <li><button onclick="confirm_close()" class="yui-button-disabled" id="closebutton" type="push" disabled="true" title="You can not close this basket" >Can not close basket</a></li>
-                     <!-- TMPL_IF name="basketno" -->
-                        <li><a href="/cgi-bin/koha/acqui/uncertainprice.pl?booksellerid=<!-- TMPL_VAR name="booksellerid" -->&basketno=<!-- TMPL_VAR name="basketno" -->&owner=1" class="button" id="uncertpricesbutton">Uncertain prices</a></li>
-                    <!-- TMPL_ELSE -->
+        <!-- TMPL_UNLESS name="selectbasketg" -->
+            <!-- TMPL_UNLESS name="closedate" -->
+                <div id="toolbar">
+                    <script type="text/javascript">
+                        //<![CDATA[
+                        // prepare DOM for YUI Toolbar
+                        $(document).ready(function() {
+                            yuiToolbar();
+                        });
+                        // YUI Toolbar Functions
+                        function yuiToolbar() {
+                            <!-- TMPL_IF name="unclosable" -->
+                                new YAHOO.widget.Button("uncertpricesbutton");
+                                new YAHOO.widget.Button("closebutton", {disabled:true});
+                            <!-- TMPL_ELSE -->
+                                new YAHOO.widget.Button("closebutton");
+                            <!-- /TMPL_IF -->
+                            new YAHOO.widget.Button("basketheadbutton");
+                            new YAHOO.widget.Button("delbasketbutton");
+                        }
+                        //]]>
+                    </script>
+                    <ul id="toolbar-list" class="toolbar">
+                    <li><a href="basketheader.pl?basketno=<!-- TMPL_VAR NAME="basketno" -->&op=add_form" class="button" id="basketheadbutton">Edit basket header information</a></li>
+                    <li><a href="<!-- TMPL_VAR NAME="script_name" -->?op=del_basket&basketno=<!-- TMPL_VAR NAME="basketno" -->&booksellerid=<!-- TMPL_VAR NAME="booksellerid" -->" class="button" id="delbasketbutton">Delete this basket</a></li>
+                    <!-- TMPL_IF name="unclosable" -->
+                        <li><button onclick="confirm_close()" class="yui-button-disabled" id="closebutton" type="push" disabled="true" title="You can not close this basket" >Can not close basket</a></li>
                         <li><a href="/cgi-bin/koha/acqui/uncertainprice.pl?booksellerid=<!-- TMPL_VAR name="booksellerid" -->&owner=1" class="button" id="uncertpricesbutton">Uncertain prices</a></li>
-                    <!--/TMPL_IF -->
-                 <!-- TMPL_ELSE -->
-                     <li><a href="javascript:confirm_close()" class="button" id="closebutton">Close this basket</a></li>
-                 <!-- /TMPL_IF -->
-                 </ul>
-             </div>
-        <!-- TMPL_ELSE -->
-            <!-- TMPL_UNLESS name="grouped" -->
-            <div id="toolbar">
-                 <script type="text/javascript">
-                     //<![CDATA[
-                     // prepare DOM for YUI Toolbar
-                      $(document).ready(function() {
-                         yuiToolbar();
-                      });
-                      // YUI Toolbar Functions
-                     function yuiToolbar() {
-                         new YAHOO.widget.Button("reopenbutton");
-                     }
-                     //]]>
-                 </script>
-                     <ul id="toolbar-list" class="toolbar">
-                         <li><a href="javascript:confirm_reopen()" class="button" id="reopenbutton">Reopen this basket</a></li>
-                     </ul>
-             </div>
-             <!-- /TMPL_UNLESS -->
-        <!-- /TMPL_UNLESS -->
-        
-<!-- TMPL_IF NAME="NO_BOOKSELLER" -->
-<h2>Supplier Not Found</h2>
-<!-- TMPL_ELSE -->
-    <!-- TMPL_IF NAME="delete_confirmed" -->
-        <h3>Basket deleted</h3>
-        <META HTTP-EQUIV=Refresh CONTENT="0; URL=booksellers.pl">
-    <!-- TMPL_ELSE -->
-    <h1><!-- TMPL_UNLESS name="basketno" -->New <!-- /TMPL_UNLESS --><!-- TMPL_IF NAME="delete_confirm" -->Delete<!-- /TMPL_IF -->Basket <!-- TMPL_VAR NAME="basketno" --> for <a href="supplier.pl?supplierid=<!-- TMPL_VAR NAME="booksellerid" -->"><!-- TMPL_VAR NAME="name" --></a></h1>
-    <!-- TMPL_IF NAME="delete_confirm" -->
-        <h2>
-        <span class="yui-button yui-link-button">
-          <em class="first-child">
-            <a href="<!-- TMPL_VAR NAME="script_name" -->?op=delete_confirm&basketno=<!-- TMPL_VAR NAME="basketno" -->&booksellerid=<!-- TMPL_VAR NAME="booksellerid" -->" class="yui-link-button">Yes, delete this basket!</a>
-          </em>
-        </span>
-        <span class="yui-button yui-link-button">
-          <em class="first-child">
-            <a href="<!-- TMPL_VAR name="script_name" -->?basketno=<!-- TMPL_VAR name="basketno" -->" class="yui-link-button">Cancel</a>
-          </em>
-        </span>
-        </h2>
-    <!-- /TMPL_IF -->
-    <!-- TMPL_IF NAME="basketno" --><div id="acqui_basket_summary">
-        <h2>Basket Details</h2>
-        <p>Basket number:  <!-- TMPL_VAR NAME="basketno" --></p>
-        <p>Basket name: <!--TMPL_VAR NAME="basketname" --></p>
-        <p>Internal note: <!-- TMPL_VAR NAME="basketnote" --></p>
-        <p>Bookseller note: <!-- TMPL_VAR NAME="basketbooksellernote" --></p>
-        <!-- TMPL_IF NAME="basketcontractno" -->
-        <p>Contract number: <!-- TMPL_VAR NAME="basketcontractno" --></p>
-        <p>Contract name: <a href="../admin/aqcontract.pl?op=add_form&contractnumber=<!-- TMPL_VAR NAME="basketcontractno" -->"><!-- TMPL_VAR NAME="basketcontractname" --></a></p>
-        <!-- /TMPL_IF -->
-        <p>Managed by:  <!-- TMPL_VAR NAME="authorisedbyname" --></p>
-        <p>Open on:  <!-- TMPL_VAR NAME="creationdate" --></p>
-        <p>For vendor ID: <!-- TMPL_VAR NAME="booksellerid" --></p>
-        <p>Invoice number: <!-- TMPL_VAR NAME="booksellerinvoicenumber" --></p>
-        <!-- TMPL_IF name="closedate" -->
-          <form action="/cgi-bin/koha/acqui/basketgroup.pl" method="post">
-          <p>Closed On:  <!-- TMPL_VAR name="closedate" --></p>
-          <!-- TMPL_IF name="basketgroups" -->
-              <p> basketgroup: <select id="basketgroupid" name="basketgroupid">
-                  <!-- TMPL_LOOP name="basketgroups" -->
-                    <!-- TMPL_IF name="default" -->
-                      <option value="<!-- TMPL_VAR name="id" -->" selected="selected"><!-- TMPL_VAR name="name" --></option>
                     <!-- TMPL_ELSE -->
-                      <option value="<!-- TMPL_VAR name="id" -->"><!-- TMPL_VAR name="name" --></option>
+                        <!-- TMPL_IF name="CAN_user_acquisition_group_manage" -->
+                            <li><a href="<!-- TMPL_VAR name="script_name" -->?op=close&basketno=<!-- TMPL_VAR name="basketno" -->" class="button" id="closebutton">Close this basket</a></li>
+                        <!-- TMPL_ELSE -->
+                            <li><a href="javascript:confirm_close();" class="button" id="closebutton">Close this basket</a></li>
+                        <!-- /TMPL_IF -->
                     <!-- /TMPL_IF -->
-                  <!-- /TMPL_LOOP -->
-                </select>
-                <input type="hidden" id="basketno" value="<!-- TMPL_VAR name="basketno" -->" name="basketno" />
-                <input type="hidden" value="mod_basket" name="op" />
-                <input type="hidden" name="booksellerid" value="<!-- TMPL_VAR name="booksellerid" -->" />
-                <input type="submit" value="Change basketgroup" />
-              </p>
-          </form>
-          <!-- /TMPL_IF -->
+                    </ul>
+                </div>
+            <!-- TMPL_ELSE -->
+                <!-- TMPL_UNLESS name="grouped" -->
+                <div id="toolbar">
+                    <script type="text/javascript">
+                        //<![CDATA[
+                        // prepare DOM for YUI Toolbar
+                        $(document).ready(function() {
+                            yuiToolbar();
+                        });
+                        // YUI Toolbar Functions
+                        function yuiToolbar() {
+                            new YAHOO.widget.Button("reopenbutton");
+                        }
+                        //]]>
+                    </script>
+                        <ul id="toolbar-list" class="toolbar">
+                            <li><a href="javascript:confirm_reopen();" class="button" id="reopenbutton">Reopen this basket</a></li>
+                        </ul>
+                </div>
+                <!-- /TMPL_UNLESS -->
+            <!-- /TMPL_UNLESS -->
+            
+    <!-- TMPL_IF NAME="NO_BOOKSELLER" -->
+    <h2>Supplier Not Found</h2>
+    <!-- TMPL_ELSE -->
+        <!-- TMPL_IF NAME="delete_confirmed" -->
+            <h3>Basket deleted</h3>
+            <META HTTP-EQUIV=Refresh CONTENT="0; URL=booksellers.pl">
+        <!-- TMPL_ELSE -->
+        <h1><!-- TMPL_UNLESS name="basketno" -->New <!-- /TMPL_UNLESS --><!-- TMPL_IF NAME="delete_confirm" -->Delete<!-- /TMPL_IF -->Basket <!-- TMPL_VAR NAME="basketno" --> for <a href="supplier.pl?supplierid=<!-- TMPL_VAR NAME="booksellerid" -->"><!-- TMPL_VAR NAME="name" --></a></h1>
+        <!-- TMPL_IF NAME="delete_confirm" -->
+            <h2>
+            <span class="yui-button yui-link-button">
+            <em class="first-child">
+                <a href="<!-- TMPL_VAR NAME="script_name" -->?op=delete_confirm&basketno=<!-- TMPL_VAR NAME="basketno" -->&booksellerid=<!-- TMPL_VAR NAME="booksellerid" -->" class="yui-link-button">Yes, delete this basket!</a>
+            </em>
+            </span>
+            <span class="yui-button yui-link-button">
+            <em class="first-child">
+                <a href="<!-- TMPL_VAR name="script_name" -->?basketno=<!-- TMPL_VAR name="basketno" -->" class="yui-link-button">Cancel</a>
+            </em>
+            </span>
+            </h2>
         <!-- /TMPL_IF -->
-        <p>Number of orders: <!-- TMPL_VAR name="count" --></p>
-    </div><!-- /TMPL_IF -->
-    
-    <!-- TMPL_UNLESS name="delete_confirm" -->
-    <div id="acqui_basket_content">
-    <h2>Order Details</h2>
-       <!-- TMPL_IF NAME="sort_loop" -->
-               <!-- TMPL_LOOP NAME="sort_loop" -->
-                       <!-- TMPL_IF name="error" -->
-                       <div class="dialog alert">ERROR: Illegal sort requested by &quot;<!-- TMPL_VAR NAME="string" -->&quot;.
-                               <br />Please use valid sort criteria. <a href="/cgi-bin/koha/acqui/basket.pl?basketno=<!-- TMPL_VAR NAME="basketno" -->">Return to default results.</a></div>
-                       <!-- TMPL_ELSE -->
-                       <div class="dialog message">Sorted by &quot;<!-- TMPL_VAR NAME="string" -->&quot;.</div>
-                       <!-- /TMPL_IF -->
-               <!-- /TMPL_LOOP -->
-       <!-- /TMPL_IF -->
-    <!-- TMPL_IF name="books_loop" -->
-        <table>
-            <tr>
-                <th>Order</th>
-                <th>Title</th>
-                <th>ISBN</th>
-                <th><a href="basket.pl?basketno=<!-- TMPL_VAR name="basketno" -->&amp;order=biblioitems.publishercode">Publisher</a></th>
-                <th>RRP</th>
-                <th>Est.</th>
-                <th>Qty.</th>
-                <th>Total</th>
-                <th>Budget</th>
-                <!-- TMPL_IF name="active" -->
-                    <!-- TMPL_UNLESS name="closedate" -->
-                        <th>Modify</th>
-                        <th>Delete</th>
-                    <!-- /TMPL_UNLESS -->
+        <!-- TMPL_IF NAME="basketno" --><div id="acqui_basket_summary">
+            <h2>Basket Details</h2>
+            <p>Basket number:  <!-- TMPL_VAR NAME="basketno" --></p>
+            <p>Basket name: <!--TMPL_VAR NAME="basketname" --></p>
+            <p>Internal note: <!-- TMPL_VAR NAME="basketnote" --></p>
+            <p>Bookseller note: <!-- TMPL_VAR NAME="basketbooksellernote" --></p>
+            <!-- TMPL_IF NAME="basketcontractno" -->
+            <p>Contract number: <!-- TMPL_VAR NAME="basketcontractno" --></p>
+            <p>Contract name: <a href="../admin/aqcontract.pl?op=add_form&contractnumber=<!-- TMPL_VAR NAME="basketcontractno" -->"><!-- TMPL_VAR NAME="basketcontractname" --></a></p>
+            <!-- /TMPL_IF -->
+            <p>Managed by:  <!-- TMPL_VAR NAME="authorisedbyname" --></p>
+            <p>Open on:  <!-- TMPL_VAR NAME="creationdate" --></p>
+            <p>For vendor ID: <!-- TMPL_VAR NAME="booksellerid" --></p>
+            <p>Invoice number: <!-- TMPL_VAR NAME="booksellerinvoicenumber" --></p>
+            <!-- TMPL_IF name="closedate" -->
+            <form action="/cgi-bin/koha/acqui/basketgroup.pl" method="post">
+            <p>Closed On:  <!-- TMPL_VAR name="closedate" --></p>
+            <!-- TMPL_IF name="basketgroups" -->
+                <p> basketgroup: <select id="basketgroupid" name="basketgroupid">
+                    <!-- TMPL_LOOP name="basketgroups" -->
+                        <!-- TMPL_IF name="default" -->
+                        <option value="<!-- TMPL_VAR name="id" -->" selected="selected"><!-- TMPL_VAR name="name" --></option>
+                        <!-- TMPL_ELSE -->
+                        <option value="<!-- TMPL_VAR name="id" -->"><!-- TMPL_VAR name="name" --></option>
+                        <!-- /TMPL_IF -->
+                    <!-- /TMPL_LOOP -->
+                    </select>
+                    <input type="hidden" id="basketno" value="<!-- TMPL_VAR name="basketno" -->" name="basketno" />
+                    <input type="hidden" value="mod_basket" name="op" />
+                    <input type="hidden" name="booksellerid" value="<!-- TMPL_VAR name="booksellerid" -->" />
+                    <input type="submit" value="Change basketgroup" />
+                </p>
+            </form>
+            <!-- /TMPL_IF -->
+            <!-- /TMPL_IF -->
+            <p>Number of orders: <!-- TMPL_VAR name="count" --></p>
+        </div><!-- /TMPL_IF -->
+        
+        <!-- TMPL_UNLESS name="delete_confirm" -->
+        <div id="acqui_basket_content">
+        <h2>Order Details</h2>
+        <!-- TMPL_IF NAME="sort_loop" -->
+            <!-- TMPL_LOOP NAME="sort_loop" -->
+                <!-- TMPL_IF name="error" -->
+                <div class="dialog alert">ERROR: Illegal sort requested by &quot;<!-- TMPL_VAR NAME="string" -->&quot;.
+                    <br />Please use valid sort criteria. <a href="/cgi-bin/koha/acqui/basket.pl?basketno=<!-- TMPL_VAR NAME="basketno" -->">Return to default results.</a></div>
+                <!-- TMPL_ELSE -->
+                <div class="dialog message">Sorted by &quot;<!-- TMPL_VAR NAME="string" -->&quot;.</div>
                 <!-- /TMPL_IF -->
-            </tr>
-            <!-- TMPL_LOOP NAME="books_loop" -->
-                 <!-- TMPL_IF NAME="order_received" --><tr class="disabled"><!-- TMPL_ELSE --><!-- TMPL_IF NAME="toggle" --><tr class="highlight"><!-- TMPL_ELSE --><tr><!-- /TMPL_IF --><!-- /TMPL_IF -->
-                    <td><!-- TMPL_VAR NAME="ordernumber" -->
-                                                       <!-- TMPL_IF NAME="order_received" --> (rcvd)<!-- /TMPL_IF --></td>
-                        <td>
-                               <p>
-                                <a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=<!-- TMPL_VAR name="biblionumber" -->"><!-- TMPL_VAR NAME="title" escape="html" --></a></p>
-                                <p><!-- TMPL_VAR NAME="author" -->
-                                <!-- TMPL_IF name="notes" --></p><p><!--TMPL_VAR name="notes" --><!-- /TMPL_IF -->
-                            </p>
-                        </td>
-                    <td><!-- TMPL_IF name="isbn"--><!-- TMPL_VAR name="isbn" --><!-- /TMPL_IF --></td>
-                    <td><!-- TMPL_VAR NAME="publishercode" --></td>
-                    <td class="number"><!-- TMPL_VAR NAME="rrp" --></td>
-                    <td class="number"><!-- TMPL_VAR NAME="ecost" --></td>
-                    <td class="number"><!-- TMPL_VAR NAME="quantity" --></td>
-                    <td class="number"><!-- TMPL_VAR NAME="line_total" --></td>
-                    <td><!-- TMPL_VAR NAME="budget_name" --></td>
+            <!-- /TMPL_LOOP -->
+        <!-- /TMPL_IF -->
+        <!-- TMPL_IF name="books_loop" -->
+            <table>
+                <tr>
+                    <th>Order</th>
+                    <th>Title</th>
+                    <th>ISBN</th>
+                    <th><a href="basket.pl?basketno=<!-- TMPL_VAR name="basketno" -->&amp;order=biblioitems.publishercode">Publisher</a></th>
+                    <th>RRP</th>
+                    <th>Est.</th>
+                    <th>Qty.</th>
+                    <th>Total</th>
+                    <th>Budget</th>
                     <!-- TMPL_IF name="active" -->
                         <!-- TMPL_UNLESS name="closedate" -->
-                        <td>
-                            <a href="neworderempty.pl?ordnum=<!-- TMPL_VAR NAME="ordernumber" -->&amp;booksellerid=<!-- TMPL_VAR NAME="booksellerid" -->&amp;basketno=<!-- TMPL_VAR NAME="basketno" -->">Modify</a>
-                        </td>
-                        <td>
-                        <a href="addorder.pl?ordnum=<!-- TMPL_VAR NAME="ordernumber" -->&amp;basketno=<!-- TMPL_VAR NAME="basketno" -->&amp;quantity=0&amp;biblionumber=<!-- TMPL_VAR NAME="biblionumber" -->">Delete</a>
-                        </td>
+                            <th>Modify</th>
+                            <th>Delete</th>
                         <!-- /TMPL_UNLESS -->
                     <!-- /TMPL_IF -->
                 </tr>
-            <!-- /TMPL_LOOP -->
-            <tr>
-                <td colspan="4" rowspan="3">
-                    <input type="hidden" name="number" value="<!-- TMPL_VAR NAME="count" -->" />
-                    <input type="hidden" name="basketno" value="<!-- TMPL_VAR NAME="basketno" -->" />
-                </td>
-                <th>SubTotal</th>
-                <th><!-- TMPL_VAR NAME="sub_total_rrp" --></th>
-                <th><!-- currently duplicative <!-- TMPL_VAR NAME="sub_total_est" --> --></th>
-                <th><!-- TMPL_VAR name="qty_total" --></th>
-                <th><!-- TMPL_VAR NAME="sub_total" --></th>
-                    <!-- TMPL_IF name="active" -->
-                        <!-- TMPL_IF name="closedate" -->
-                          <td colspan="1" rowspan="3">&nbsp;</td>
-                        <!-- TMPL_ELSE -->
-                          <td colspan="3" rowspan="3">&nbsp;</td>
+                <!-- TMPL_LOOP NAME="books_loop" -->
+                    <!-- TMPL_IF NAME="order_received" --><tr class="disabled"><!-- TMPL_ELSE --><!-- TMPL_IF NAME="toggle" --><tr class="highlight"><!-- TMPL_ELSE --><tr><!-- /TMPL_IF --><!-- /TMPL_IF -->
+                        <td><!-- TMPL_VAR NAME="ordernumber" -->
+                                <!-- TMPL_IF NAME="order_received" --> (rcvd)<!-- /TMPL_IF --></td>
+                            <td>
+                                <p>
+                                    <a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=<!-- TMPL_VAR name="biblionumber" -->"><!-- TMPL_VAR NAME="title" --></a></p>
+                                    <p><!-- TMPL_VAR NAME="author" -->
+                                    <!-- TMPL_IF name="notes" --></p><p><!--TMPL_VAR name="notes" --><!-- /TMPL_IF -->
+                                </p>
+                            </td>
+                        <td><!-- TMPL_IF name="isbn"--><!-- TMPL_VAR name="isbn" --><!-- /TMPL_IF --></td>
+                        <td><!-- TMPL_VAR NAME="publishercode" --></td>
+                        <td class="number"><!-- TMPL_VAR NAME="rrp" --></td>
+                        <td class="number"><!-- TMPL_VAR NAME="ecost" --></td>
+                        <td class="number"><!-- TMPL_VAR NAME="quantity" --></td>
+                        <td class="number"><!-- TMPL_VAR NAME="line_total" --></td>
+                        <td><!-- TMPL_VAR NAME="budget_name" --></td>
+                        <!-- TMPL_IF name="active" -->
+                            <!-- TMPL_UNLESS name="closedate" -->
+                            <td>
+                                <a href="neworderempty.pl?ordnum=<!-- TMPL_VAR NAME="ordernumber" -->&amp;booksellerid=<!-- TMPL_VAR NAME="booksellerid" -->&amp;basketno=<!-- TMPL_VAR NAME="basketno" -->">Modify</a>
+                            </td>
+                            <td>
+                            <a href="addorder.pl?ordnum=<!-- TMPL_VAR NAME="ordernumber" -->&amp;basketno=<!-- TMPL_VAR NAME="basketno" -->&amp;quantity=0&amp;biblionumber=<!-- TMPL_VAR NAME="biblionumber" -->">Delete</a>
+                            </td>
+                            <!-- /TMPL_UNLESS -->
                         <!-- /TMPL_IF -->
-                    <!-- /TMPL_IF -->
-            </tr>
-                       <tr>
-                <th>GST (<!-- TMPL_VAR NAME="gist_rate" -->)</th>
-                <th><!-- TMPL_VAR NAME="gist_rrp" --></th>
-<!-- TMPL_UNLESS NAME="listincgst" -->
-                <th><!-- currently duplicative <!-- TMPL_VAR NAME="gist_est" --> --></th>
-                <th>&nbsp;</th>
-                <th><!-- TMPL_VAR NAME="gist" --></th>
-<!-- TMPL_ELSE -->
-                               <th colspan="3">**</th>
-<!-- /TMPL_UNLESS -->
-            </tr>
-            <tr>
-                <th>TOTAL (<!-- TMPL_VAR NAME="currency" -->)</th>
-                <th><!-- TMPL_VAR NAME="grand_total_rrp" --></th>
-                <th>&nbsp;</th>
-                <th><!-- TMPL_VAR name="qty_total" --></th>
-                <th><!-- TMPL_VAR NAME="grand_total" --></th>
-            </tr>
-        </table>
+                    </tr>
+                <!-- /TMPL_LOOP -->
+                <tr>
+                    <td colspan="4" rowspan="3">
+                        <input type="hidden" name="number" value="<!-- TMPL_VAR NAME="count" -->" />
+                        <input type="hidden" name="basketno" value="<!-- TMPL_VAR NAME="basketno" -->" />
+                    </td>
+                    <th>SubTotal</th>
+                    <th><!-- TMPL_VAR NAME="sub_total_rrp" --></th>
+                    <th><!-- currently duplicative <!-- TMPL_VAR NAME="sub_total_est" --> --></th>
+                    <th><!-- TMPL_VAR name="qty_total" --></th>
+                    <th><!-- TMPL_VAR NAME="sub_total" --></th>
+                        <!-- TMPL_IF name="active" -->
+                            <!-- TMPL_IF name="closedate" -->
+                            <td colspan="1" rowspan="3">&nbsp;</td>
+                            <!-- TMPL_ELSE -->
+                            <td colspan="3" rowspan="3">&nbsp;</td>
+                            <!-- /TMPL_IF -->
+                        <!-- /TMPL_IF -->
+                </tr>
+                <tr>
+                    <th>GST (<!-- TMPL_VAR NAME="gist_rate" -->)</th>
+                    <th><!-- TMPL_VAR NAME="gist_rrp" --></th>
+    <!-- TMPL_UNLESS NAME="listincgst" -->
+                    <th><!-- currently duplicative <!-- TMPL_VAR NAME="gist_est" --> --></th>
+                    <th>&nbsp;</th>
+                    <th><!-- TMPL_VAR NAME="gist" --></th>
     <!-- TMPL_ELSE -->
-        <table>
-            <tr><td>Basket empty</td></tr>
-        </table>
-    <!-- /TMPL_IF -->
-       <!-- TMPL_IF NAME="listincgst" --><small class="highlight">** Vendor's listings already include GST.</small>
-    <!-- /TMPL_IF -->
-    </div>
-    <br />
-    <!-- TMPL_UNLESS name="closedate" -->
-    <fieldset id="acqui_basket_add">
-        <legend>Add To Order</legend>
-        <form action="/cgi-bin/koha/acqui/neworderbiblio.pl" method="post">
-            <input type="hidden" name="booksellerid" value="<!-- TMPL_VAR NAME="booksellerid" -->" />
-            <input type="hidden" name="basketno" value="<!-- TMPL_VAR NAME="basketno" -->" />
-            <ul><li><label for="q">From an existing record: </label><input id="q" type="text"  size="25" name="q" />
-            <input type="submit" class="submit" value="Search" /></li>
-            <li><a href="/cgi-bin/koha/acqui/newordersuggestion.pl?booksellerid=<!-- TMPL_VAR NAME="booksellerid" -->&amp;basketno=<!-- TMPL_VAR NAME="basketno" -->">From a Suggestion</a></li>
-            <li><a href="/cgi-bin/koha/acqui/neworderempty.pl?booksellerid=<!-- TMPL_VAR NAME="booksellerid" -->&amp;basketno=<!-- TMPL_VAR NAME="basketno" -->">From a new (empty) record</a></li>
-            <li><a href="/cgi-bin/koha/acqui/z3950_search.pl?booksellerid=<!-- TMPL_VAR NAME="booksellerid" -->&basketno=<!-- TMPL_VAR NAME="basketno" -->">From an external source</a></li>
-            <li><a href="/cgi-bin/koha/acqui/addorderiso2709.pl?booksellerid=<!-- TMPL_VAR NAME="booksellerid" -->&basketno=<!-- TMPL_VAR NAME="basketno" -->"> From a staged file</a></li>
-            </ul>
-        </form>
-    </fieldset>
-    <!-- /TMPL_UNLESS -->
+                    <th colspan="3">**</th>
     <!-- /TMPL_UNLESS -->
+                </tr>
+                <tr>
+                    <th>TOTAL (<!-- TMPL_VAR NAME="currency" -->)</th>
+                    <th><!-- TMPL_VAR NAME="grand_total_rrp" --></th>
+                    <th>&nbsp;</th>
+                    <th><!-- TMPL_VAR name="qty_total" --></th>
+                    <th><!-- TMPL_VAR NAME="grand_total" --></th>
+                </tr>
+            </table>
+        <!-- TMPL_ELSE -->
+            <table>
+                <tr><td>Basket empty</td></tr>
+            </table>
+        <!-- /TMPL_IF -->
+        <!-- TMPL_IF NAME="listincgst" --><small class="highlight">** Vendor's listings already include GST.</small>
+        <!-- /TMPL_IF -->
+        </div>
+        <br />
+        <!-- TMPL_UNLESS name="closedate" -->
+        <fieldset id="acqui_basket_add">
+            <legend>Add To Order</legend>
+            <form action="/cgi-bin/koha/acqui/neworderbiblio.pl" method="post">
+                <input type="hidden" name="booksellerid" value="<!-- TMPL_VAR NAME="booksellerid" -->" />
+                <input type="hidden" name="basketno" value="<!-- TMPL_VAR NAME="basketno" -->" />
+                <ul><li><label for="q">From an existing record: </label><input id="q" type="text"  size="25" name="q" />
+                <input type="submit" class="submit" value="Search" /></li>
+                <li><a href="/cgi-bin/koha/acqui/newordersuggestion.pl?booksellerid=<!-- TMPL_VAR NAME="booksellerid" -->&amp;basketno=<!-- TMPL_VAR NAME="basketno" -->">From a Suggestion</a></li>
+                <li><a href="/cgi-bin/koha/acqui/neworderempty.pl?booksellerid=<!-- TMPL_VAR NAME="booksellerid" -->&amp;basketno=<!-- TMPL_VAR NAME="basketno" -->">From a new (empty) record</a></li>
+                <li><a href="/cgi-bin/koha/acqui/z3950_search.pl?booksellerid=<!-- TMPL_VAR NAME="booksellerid" -->&basketno=<!-- TMPL_VAR NAME="basketno" -->">From an external source</a></li>
+                <li><a href="/cgi-bin/koha/acqui/addorderiso2709.pl?booksellerid=<!-- TMPL_VAR NAME="booksellerid" -->&basketno=<!-- TMPL_VAR NAME="basketno" -->"> From a staged file</a></li>
+                </ul>
+            </form>
+        </fieldset>
+        <!-- /TMPL_UNLESS -->
+        <!-- /TMPL_UNLESS -->
 <!-- /TMPL_IF -->
 <!-- /TMPL_IF -->
+    <!-- TMPL_ELSE --> <!-- if we want just to select a basketgroup for a closed basket -->
+        <form action="/cgi-bin/koha/acqui/basketgroup.pl">
+        <fieldset>
+            <legend>Assign basket <!-- TMPL_VAR name="basketname" --> to basketgroup</legend>
+                <p><label for="basketgroupid" >basketgroup:</label>
+                    <select id="basketgroupid" name="basketgroupid">
+                        <!-- TMPL_LOOP name="basketgroups" -->
+                        <option value="<!-- TMPL_VAR name="id" -->"><!-- TMPL_VAR name="name" --></option>
+                        <!-- /TMPL_LOOP -->
+                    </select>
+                </p>
+                <p>
+                    <label for="basketgroupname">Or type in the name of a new basketgroup:</label>
+                    <input type="text" id="basketgroupname" name="basketgroupname"/>
+                </p>
+                <p>
+                    <label for='closebasketgroup'>Close basketgroup after attaching it:</label>
+                    <input type="checkbox" id="closebasketgroup" name="closebasketgroup"/>
+                </p>
+                <input type="hidden" id="basketno" value="<!-- TMPL_VAR name="basketno" -->" name="basketno" />
+                <input type="hidden" value="attachbasket" name="op" />
+                <input type="hidden" name="booksellerid" value="<!-- TMPL_VAR name="booksellerid" -->" />
+                <input type="submit" value="Change basketgroup" />
+        </fieldset>
+        </form>
+    <!-- /TMPL_UNLESS -->
 </div>
 </div>
 <div class="yui-b">
index b64c693..d337920 100755 (executable)
@@ -207,24 +207,33 @@ fieldset.various li {
 
             <!-- TMPL_IF NAME="basketgroups" -->
                 <!-- TMPL_LOOP NAME="basketgroups" -->
-                    <!-- TMPL_IF NAME="closed" -->
-                        <div class="closed" style="display: none">
+                    <!-- TMPL_UNLESS name="displayclosedbgs" -->
+                        <!-- TMPL_IF NAME="closed" -->
+                            <div class="closed" style="display: none">
+                            <h3 ><!-- TMPL_VAR NAME="name" --></h3>
+                            <p > [ 
+                                    <a href="javascript:parent.location='basketgroup.pl?op=printbgroup&bgroupid=<!-- TMPL_VAR NAME="id" -->';">print</a>/
+                                    <a href="javascript:unclosegroup('<!-- TMPL_VAR name="id" -->');">Unclose group</a>
+                            ]</p>
+                            <ul id="bg-<!-- TMPL_VAR NAME="id" -->" class="closed">
+                        <!-- TMPL_ELSE -->
+                            <div class="workarea">
+                            <h3 ><!-- TMPL_VAR NAME="name" --></h3>
+                            <p > [ 
+                                <a href="javascript:renameinit(<!-- TMPL_VAR NAME="id" -->);">rename</a> / 
+                                <a href="javascript:closebasketgroup('<!-- TMPL_VAR NAME="id" -->');">close</a>
+                            ]</p>
+                            <ul id="bg-<!-- TMPL_VAR NAME="id" -->" class="draglist">
+                        <!-- /TMPL_IF -->
+                    <!-- TMPL_ELSE -->
+                        <div class="closed">
                         <h3 ><!-- TMPL_VAR NAME="name" --></h3>
                         <p > [ 
                                 <a href="javascript:parent.location='basketgroup.pl?op=printbgroup&bgroupid=<!-- TMPL_VAR NAME="id" -->';">print</a>/
                                 <a href="javascript:unclosegroup('<!-- TMPL_VAR name="id" -->');">Unclose group</a>
                         ]</p>
                         <ul id="bg-<!-- TMPL_VAR NAME="id" -->" class="closed">
-                    <!-- TMPL_ELSE -->
-                        <div class="workarea">
-                        <h3 ><!-- TMPL_VAR NAME="name" --></h3>
-                        <p > [ 
-                            <a href="javascript:renameinit(<!-- TMPL_VAR NAME="id" -->);">rename</a> / 
-                            <a href="javascript:closebasketgroup('<!-- TMPL_VAR NAME="id" -->');">close</a>
-                        ]</p>
-                        <ul id="bg-<!-- TMPL_VAR NAME="id" -->" class="draglist">
-
-                    <!-- /TMPL_IF -->
+                    <!-- /TMPL_UNLESS -->
                         <!-- TMPL_LOOP NAME="baskets" -->
                             <li class="grouped" id="<!-- TMPL_VAR NAME="basketno" -->">
                                 <a href="basket.pl?basketno=<!-- TMPL_VAR NAME="basketno" -->">