From 3a499909f6987121c8520a8765f7b5e4cc7d03d7 Mon Sep 17 00:00:00 2001
From: Julian Maurice <julian.maurice@biblibre.com>
Date: Mon, 11 Jun 2012 13:56:58 +0200
Subject: [PATCH] Bug 5349 follow-up: run transferorder.pl in a popup

Signed-off-by: Marc Veron <veron@veron.ch>
---
 acqui/transferorder.pl                             |    5 +---
 .../intranet-tmpl/prog/en/modules/acqui/basket.tt  |   10 ++++++--
 .../intranet-tmpl/prog/en/modules/acqui/parcel.tt  |    9 ++++++-
 .../prog/en/modules/acqui/transferorder.tt         |   26 +++++++++-----------
 4 files changed, 28 insertions(+), 22 deletions(-)

diff --git a/acqui/transferorder.pl b/acqui/transferorder.pl
index 27c4509..6a0c63e 100755
--- a/acqui/transferorder.pl
+++ b/acqui/transferorder.pl
@@ -77,9 +77,7 @@ if( $basketno && $ordernumber) {
 
     TransferOrder($ordernumber, $basketno);
 
-    my $referrer = $input->param('referrer');
-    print $input->redirect($referrer);
-    exit;
+    $template->param(transferred => 1)
 } elsif ( $bookselleridto && $ordernumber) {
     # Show open baskets for this bookseller
     my $order = GetOrder( $ordernumber );
@@ -138,7 +136,6 @@ $template->param(
     booksellertoname    => $booksellertoname,
     ordernumber         => $ordernumber,
     basketno            => $basketno,
-    referrer            => $input->param('referrer')
 );
 
 output_html_with_http_headers $input, $cookie, $template->output;
diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/basket.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/basket.tt
index 9dfd25c..b7ba542 100644
--- a/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/basket.tt
+++ b/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/basket.tt
@@ -53,7 +53,7 @@
                     window.location = "addorder.pl?ordernumber="+ordernumber+"&basketno=[% basketno %]&quantity=0&biblionumber="+biblionumber;
                 }
             }
-            
+
             function confirm_delete_biblio(ordernumber, biblionumber) {
                 var is_confirmed = confirm(_('Are you sure you want to delete this catalog record and order ?'));
                 if (is_confirmed) {
@@ -61,6 +61,12 @@
                     }
             }
 
+            function transfer_order_popup(ordernumber) {
+                var url = "/cgi-bin/koha/acqui/transferorder.pl?"
+                    + "ordernumber=" + ordernumber
+                window.open(url, 'TransferOrder');
+            }
+
 //]]>
 </script>
 [% ELSE %]
@@ -360,7 +366,7 @@
                                 <a href="neworderempty.pl?ordernumber=[% books_loo.ordernumber %]&amp;booksellerid=[% booksellerid %]&amp;basketno=[% basketno %]">Modify</a>
                                 [% UNLESS (books_loo.order_received) %]
                                     <br />
-                                    <a href="/cgi-bin/koha/acqui/transferorder.pl?ordernumber=[% books_loo.ordernumber %]&referrer=[% "/cgi-bin/koha/acqui/basket.pl?basketno=$basketno" | uri %]">Transfer</a>
+                                    <a href="#" onclick="transfer_order_popup([% books_loo.ordernumber %]); return false;">Transfer</a>
                                 [% END %]
                             </td>
                             <td>
diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/parcel.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/parcel.tt
index e5b0575..1268aac 100644
--- a/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/parcel.tt
+++ b/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/parcel.tt
@@ -125,6 +125,13 @@
                     window.location = "addorder.pl?ordernumber="+ordernumber+"&basketno="+basketno+"&quantity=0&biblionumber="+biblionumber+"&delbiblio=1";
                     }
             }
+
+            function transfer_order_popup(ordernumber) {
+                var url = "/cgi-bin/koha/acqui/transferorder.pl?"
+                    + "ordernumber=" + ordernumber
+                window.open(url, 'TransferOrder');
+            }
+
 //]]>
 </script>
 </head>
@@ -248,7 +255,7 @@
 				<td>
                               <a href="orderreceive.pl?ordernumber=[% loop_order.ordernumber %]&amp;invoiceid=[% invoiceid %]">Receive</a>
                     <br />
-                    <a href="/cgi-bin/koha/acqui/transferorder.pl?ordernumber=[% loop_order.ordernumber %]&amp;referrer=[% "/cgi-bin/koha/acqui/parcel.pl?invoiceid=[% invoiceid %]" | uri %]">Transfer</a>
+                    <a href="#" onclick="transfer_order_popup([% loop_order.ordernumber %]); return false;">Transfer</a>
 				</td>
 				<td>
                         [% IF ( loop_order.left_holds_on_order ) %]
diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/transferorder.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/transferorder.tt
index f694c1f..c44b583 100644
--- a/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/transferorder.tt
+++ b/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/transferorder.tt
@@ -1,16 +1,16 @@
 [% INCLUDE 'doc-head-open.inc' %]
 <title>Koha &rsaquo; Acquisitions &rsaquo; Transfer order</title>
 [% INCLUDE 'doc-head-close.inc' %]
+[% IF transferred %]
+    <script type="text/javascript">
+    //<![CDATA[
+        opener.location.reload();
+        window.close();
+    //]]>
+    </script>
+[% END %]
 </head>
 <body>
-[% INCLUDE 'header.inc' %]
-[% INCLUDE 'acquisitions-search.inc' %]
-
-<div id="breadcrumbs">
-    <a href="/cgi-bin/koha/mainpage.pl">Home</a>
-    &rsaquo; <a href="/cgi-bin/koha/acqui/acqui-home.pl">Acquisitions</a>
-    &rsaquo; Transfer order
-</div>
 
 <div id="doc3" class="yui-t2">
 <div id="bd">
@@ -32,7 +32,7 @@
                             <td>[% basket.basketname %] (#[% basket.basketno %])</td>
                             <td>[% basket.createdby %]</td>
                             <td>[% basket.creationdate %]</td>
-                            <td><a href="transferorder.pl?basketno=[% basket.basketno %]&ordernumber=[% ordernumber %][% IF (referrer) %]&referrer=[% referrer | uri %][% END %]" onclick="return confirm('Do you want to transfer order [% ordernumber %] from basket [% basketfromname %] ([% booksellerfromname %]) to basket [% basket.basketname %] ([% booksellertoname %]) ?');">Choose</a>
+                            <td><a href="transferorder.pl?basketno=[% basket.basketno %]&ordernumber=[% ordernumber %]" onclick="return confirm('Do you want to transfer order [% ordernumber %] from basket [% basketfromname %] ([% booksellerfromname %]) to basket [% basket.basketname %] ([% booksellertoname %]) ?');">Choose</a>
                           </tr>
                         [% END %]
                     </tbody>
@@ -59,7 +59,7 @@
                             [% IF ( ordersloo.isbn ) %] &ndash; [% ordersloo.isbn %][% END %]
                             [% IF ( ordersloo.publishercode ) %]<br />Publisher :[% ordersloo.publishercode %][% END %]
                         </td>
-                        <td><a href="transferorder.pl?bookselleridfrom=[% ordersloo.bookselleridfrom %]&ordernumber=[% ordersloo.ordernumber %][% IF (referrer) %]&referrer=[% referrer | uri %][% END %]">Transfer</a></td>
+                        <td><a href="transferorder.pl?bookselleridfrom=[% ordersloo.bookselleridfrom %]&ordernumber=[% ordersloo.ordernumber %]">Transfer</a></td>
                       </tr>
                     [% END %]
                 </tbody>
@@ -81,7 +81,7 @@
                         [% FOREACH bookseller IN booksellersloop %]
                           <tr>
                             <td>[% bookseller.name %]</td>
-                            <td><a href="transferorder.pl?[% IF (bookselleridfrom) %]bookselleridto[% ELSE %]bookselleridfrom[% END %]=[% bookseller.id %][% IF (ordernumber) %]&ordernumber=[% ordernumber %][% END %][% IF (referrer) %]&referrer=[% referrer | uri %][% END %]">Choose</a></td>
+                            <td><a href="transferorder.pl?[% IF (bookselleridfrom) %]bookselleridto[% ELSE %]bookselleridfrom[% END %]=[% bookseller.id %][% IF (ordernumber) %]&ordernumber=[% ordernumber %][% END %]">Choose</a></td>
                           </tr>
                         [% END %]
                     </tbody>
@@ -98,7 +98,6 @@
             [% END %]
             <form method="get" action="transferorder.pl">
                 <input type="hidden" name="op" value="do_search" />
-                <input type="hidden" name="referrer" value="[% referrer %]" />
                 [% IF ( ordernumber ) %]
                     <input type="hidden" name="ordernumber" value="[% ordernumber %]" />
                 [% END %]
@@ -113,9 +112,6 @@
     </div>
 </div>
 
-<div class="yui-b">
-    [% INCLUDE 'acquisitions-menu.inc' %]
-</div>
 </div>
 </div>
 [% INCLUDE 'intranet-bottom.inc' %]
-- 
1.7.10.4