Merge remote-tracking branch 'kc/new/bug_5449' into kcmaster
authorChris Cormack <chrisc@catalyst.net.nz>
Sun, 8 May 2011 20:25:36 +0000 (08:25 +1200)
committerChris Cormack <chrisc@catalyst.net.nz>
Sun, 8 May 2011 20:25:36 +0000 (08:25 +1200)
1  2 
tools/manage-marc-import.pl
tools/stage-marc-import.pl

@@@ -27,7 -27,6 +27,7 @@@ use MARC::File::USMARC
  
  # Koha modules used
  use C4::Context;
 +use C4::Koha;
  use C4::Auth;
  use C4::Output;
  use C4::Biblio;
@@@ -62,16 -61,6 +62,16 @@@ my %cookies = parse CGI::Cookie($cookie
  my $sessionID = $cookies{'CGISESSID'}->value;
  my $dbh = C4::Context->dbh;
  
 +# Frameworks selection loop
 +{
 +    my $frameworks = getframeworks;
 +    my $arrayref = [];
 +    while ( my ($key, $value) = each %$frameworks ) {
 +        push @$arrayref, { value => $key, label => $value->{frameworktext} };
 +    }
 +    $template->param( frameworks => $arrayref );
 +}
 +
  if ($op eq "create_labels") {
        #create a batch of labels, then lose $op & $import_batch_id so we get back to import batch list.
        my $label_batch_id = create_labelbatch_from_importbatch($import_batch_id);
@@@ -105,8 -94,7 +105,8 @@@ if ($op eq "") 
      if ($completedJobID) {
          add_saved_job_results_to_template($template, $completedJobID);
      } else {
 -        commit_batch($template, $import_batch_id);
 +        my $framework = $input->param('framework');
 +        commit_batch($template, $import_batch_id, $framework);
      }
      import_biblios_list($template, $import_batch_id, $offset, $results_per_page);
  } elsif ($op eq "revert-batch") {
@@@ -234,7 -222,7 +234,7 @@@ sub import_batches_list 
  }
  
  sub commit_batch {
 -    my ($template, $import_batch_id) = @_;
 +    my ($template, $import_batch_id, $framework) = @_;
  
      my $job = undef;
      $dbh->{AutoCommit} = 0;
          $callback = progress_callback($job, $dbh);
      }
      my ($num_added, $num_updated, $num_items_added, $num_items_errored, $num_ignored) = 
 -        BatchCommitBibRecords($import_batch_id, 50, $callback);
 +        BatchCommitBibRecords($import_batch_id, $framework, 50, $callback);
      $dbh->commit();
  
      my $results = {
@@@ -310,7 -298,7 +310,7 @@@ sub put_in_background 
  
          my $reply = CGI->new("");
          print $reply->header(-type => 'text/html');
-         print "{ jobID: '$jobID' }";
+         print '{"jobID":"' . $jobID . '"}';
          exit 0;
      } elsif (defined $pid) {
          # child
@@@ -55,7 -55,7 +55,7 @@@ my $nomatch_action = $input->param('nom
  my $parse_items = $input->param('parse_items');
  my $item_action = $input->param('item_action');
  my $comments = $input->param('comments');
 -my $syntax = $input->param('syntax');
 +my $encoding = $input->param('encoding');
  my ($template, $loggedinuser, $cookie)
        = get_template_and_user({template_name => "tools/stage-marc-import.tmpl",
                                        query => $input,
@@@ -108,7 -108,7 +108,7 @@@ if ($completedJobID) 
  
              my $reply = CGI->new("");
              print $reply->header(-type => 'text/html');
-             print "{ jobID: '$jobID' }";
+             print '{"jobID":"' . $jobID . '"}';
              exit 0;
          } elsif (defined $pid) {
              # child
      }
  
      # FIXME branch code
 -    my ($batch_id, $num_valid, $num_items, @import_errors) = BatchStageMarcRecords($syntax, $marcrecord, $filename, 
 -                                                                                   $comments, '', $parse_items, 0,
 -                                                                                   50, staging_progress_callback($job, $dbh));
 +    my ($batch_id, $num_valid, $num_items, @import_errors) = BatchStageMarcRecords($encoding, $marcrecord, $filename, $comments, '', $parse_items, 0, 50, staging_progress_callback($job, $dbh));
 +
      $dbh->commit();
 +
      my $num_with_matches = 0;
      my $checked_matches = 0;
      my $matcher_failed = 0;