Bug 18111: Fix import of default framework
authorJonathan Druart <jonathan.druart@bugs.koha-community.org>
Tue, 14 Feb 2017 16:21:45 +0000 (16:21 +0000)
committerKyle M Hall <kyle@bywatersolutions.com>
Tue, 21 Feb 2017 19:53:18 +0000 (19:53 +0000)
Caused by bug 16035.

Recreate the issue:
Go to Home › Administration › MARC frameworks
For the default framework: Actions > import
It will not work

Test plan:
Confirm test plans from bug 16035 and bug 17389 still pass
Confirm that the import for the default framework now works

Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
admin/import_export_framework.pl
koha-tmpl/intranet-tmpl/prog/en/modules/admin/biblio_framework.tt

index 5a38a85..60dcf7f 100755 (executable)
@@ -46,41 +46,38 @@ unless ($authenticated) {
     exit 0;
 }
 
-my $frameworkcode = $input->param('frameworkcode') || 'default';
+my $frameworkcode = $input->param('frameworkcode') || '';
+my $framework_name = $frameworkcode || 'default';
 my $action = $input->param('action') || 'export';
 
 ## Exporting
 if ($action eq 'export' && $input->request_method() eq 'GET') {
     my $strXml = '';
-    my $format = $input->param('type_export_' . $frameworkcode);
-    if ($frameworkcode eq 'default') {
-        ExportFramework('', \$strXml, $format);
-    } else {
-        ExportFramework($frameworkcode, \$strXml, $format);
-    }
+    my $format = $input->param('type_export_' . $framework_name);
+    ExportFramework($frameworkcode, \$strXml, $format);
 
     if ($format eq 'csv') {
         # CSV file
 
         # Correctly set the encoding to output plain text in UTF-8
         binmode(STDOUT,':encoding(UTF-8)');
-        print $input->header(-type => 'application/vnd.ms-excel', -attachment => 'export_' . $frameworkcode . '.csv');
+        print $input->header(-type => 'application/vnd.ms-excel', -attachment => 'export_' . $framework_name . '.csv');
         print $strXml;
     } elsif ($format eq 'excel') {
         # Excel-xml file
-        print $input->header(-type => 'application/excel', -attachment => 'export_' . $frameworkcode . '.xml');
+        print $input->header(-type => 'application/excel', -attachment => 'export_' . $framework_name . '.xml');
         print $strXml;
     } else {
         # ODS file
         my $strODS = '';
         createODS($strXml, 'en', \$strODS);
-        print $input->header(-type => 'application/vnd.oasis.opendocument.spreadsheet', -attachment => 'export_' . $frameworkcode . '.ods');
+        print $input->header(-type => 'application/vnd.oasis.opendocument.spreadsheet', -attachment => 'export_' . $framework_name . '.ods');
         print $strODS;
     }
 ## Importing
 } elsif ($input->request_method() eq 'POST') {
     my $ok = -1;
-    my $fieldname = 'file_import_' . $frameworkcode;
+    my $fieldname = 'file_import_' . $framework_name;
     my $filename = $input->param($fieldname);
     # upload the input file
     if ($filename && $filename =~ /\.(csv|ods|xml)$/i) {
index 4edc861..20efbc1 100644 (file)
               </div>
               <form action="/cgi-bin/koha/admin/import_export_framework.pl" name="form_i_default" id="form_i_default" method="post" enctype="multipart/form-data" class="form_import">
                 <div class="modal-body">
-                  <input type="hidden" name="frameworkcode" value="default" />
+                  <input type="hidden" name="frameworkcode" value="" />
                   <input type="hidden" name="action" value="import" />
                   <p><label for="file_import_default">Upload file:</label> <input type="file" name="file_import_default" id="file_import_default" class="input_import" /></p>
                     <div id="importing_default" style="display:none" class="importing"><img src="[% interface %]/[% theme %]/img/spinner-small.gif" alt="" /><span class="importing_msg"></span></div>