Bug 3050 - Add an option to upload scanned invoices #2/3
authorJacek Ablewicz <abl@biblos.pk.edu.pl>
Fri, 9 May 2014 09:45:29 +0000 (11:45 +0200)
committerGalen Charlton <gmc@esilibrary.com>
Sun, 25 May 2014 21:14:42 +0000 (21:14 +0000)
(part #2: changes to existing acqui scripts & templates)

Signed-off-by: Paola Rossi <paola.rossi@cineca.it>
Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
acqui/invoice.pl
koha-tmpl/intranet-tmpl/prog/en/modules/acqui/invoice.tt

index 18e94d9..6608947 100755 (executable)
@@ -35,6 +35,7 @@ use C4::Output;
 use C4::Acquisition;
 use C4::Bookseller qw/GetBookSellerFromId/;
 use C4::Budgets;
+use Koha::Misc::Files;
 
 my $input = new CGI;
 my ( $template, $loggedinuser, $cookie, $flags ) = get_template_and_user(
@@ -51,6 +52,12 @@ my ( $template, $loggedinuser, $cookie, $flags ) = get_template_and_user(
 my $invoiceid = $input->param('invoiceid');
 my $op        = $input->param('op');
 
+my $invoice_files;
+if ( C4::Context->preference('AcqEnableFiles') ) {
+    $invoice_files = Koha::Misc::Files->new(
+        tabletag => 'aqinvoices', recordid => $invoiceid );
+}
+
 if ( $op && $op eq 'close' ) {
     CloseInvoice($invoiceid);
     my $referer = $input->param('referer');
@@ -86,11 +93,13 @@ elsif ( $op && $op eq 'mod' ) {
     } elsif ($input->param('merge')) {
         my @sources = $input->param('merge');
         MergeInvoices($invoiceid, \@sources);
+        defined($invoice_files) && $invoice_files->MergeFileRecIds(@sources);
     }
     $template->param( modified => 1 );
 }
 elsif ( $op && $op eq 'delete' ) {
     DelInvoice($invoiceid);
+    defined($invoice_files) && $invoice_files->DelAllFiles();
     my $referer = $input->param('referer') || 'invoices.pl';
     if ($referer) {
         print $input->redirect($referer);
@@ -166,6 +175,8 @@ $template->param(
     budgets_loop     => \@budgets_loop,
 );
 
+defined( $invoice_files ) && $template->param( files => $invoice_files->GetFilesInfo() );
+
 # FIXME
 # Fonction dupplicated from basket.pl
 # Code must to be exported. Where ??
index 35bc2da..911ff81 100644 (file)
@@ -1,3 +1,4 @@
+[% USE Koha %]
 [% USE KohaDates %]
 
 [% INCLUDE 'doc-head-open.inc' %]
             bFilter: false,
             sDom: "t"
         }));
-
+[% IF ( (Koha.Preference('AcqEnableFiles')) && files ) %]
+        $("#invoice_files_table").dataTable($.extend(true, {}, dataTablesDefaults, {
+            "aoColumnDefs": [
+                { "aTargets": [ 3 ], "sType": "natural" }
+            ],
+            bInfo: false,
+            bPaginate: false,
+            bFilter: false,
+            sDom: "t"
+        }));
+[% END %]
         $("#show_all_details").click(function(){
             updateColumnsVisibility($(this+":checked").val());
         });
       </form>
       <p>
           <a href="/cgi-bin/koha/acqui/parcel.pl?invoiceid=[% invoiceid %]">Go to receipt page</a>
+          [% IF Koha.Preference('AcqEnableFiles') %]| <a href="/cgi-bin/koha/acqui/invoice-files.pl?invoiceid=[% invoiceid %]">Manage invoice files</a>[% END %]
       </p>
       <h2>Invoice details</h2>
       [% IF orders_loop.size %]
         [% ELSE %]
             <div class="dialog message"><p>No orders yet</p></div>
         [% END %]
+        [% IF ( (Koha.Preference('AcqEnableFiles')) && files ) %]
+            <br />
+            <h2>Files attached to invoice</h2>
+            <table id="invoice_files_table">
+                <thead>
+                    <tr>
+                        <th>Name</th>
+                        <th>Type</th>
+                        <th>Description</th>
+                        <th>Uploaded</th>
+                    </tr>
+                </thead>
+                <tbody>
+                [% FOREACH f IN files %]
+                    <tr>
+                         <td><a href="/cgi-bin/koha/acqui/invoice-files.pl?invoiceid=[% invoiceid %]&amp;op=download&amp;view=1&amp;file_id=[% f.file_id %]">[% f.file_name | html %]</a></td>
+                         <td>[% f.file_type | html %]</td>
+                         <td>[% f.file_description | html %]</td>
+                         <td><!-- [% f.date_uploaded %] -->[% f.date_uploaded | $KohaDates %]</td>
+                    </tr>
+                [% END %]
+                </tbody>
+            </table>
+        [% END %]
     </div>
   </div>
   <div class="yui-b">