Clean up before final commits
[srvgit] / authorities / authorities-home.pl
index 02814d2..c0b3826 100755 (executable)
 # Suite 330, Boston, MA  02111-1307 USA
 
 use strict;
-require Exporter;
 use CGI;
 use C4::Auth;
-use HTML::Template;
 use C4::Context;
-use C4::Search;
-use C4::Auth;
-use C4::Output;
 use C4::Interface::CGI::Output;
 use C4::AuthoritiesMarc;
-use C4::SearchMarc;
-use C4::Acquisition;
 use C4::Koha; # XXX subfield_is_koha_internal_p
+use C4::Biblio;
+
 
 my $query=new CGI;
 my $op = $query->param('op');
 my $authtypecode = $query->param('authtypecode');
 my $dbh = C4::Context->dbh;
-
+my $mergefrom=$query->param('mergefrom');
+my $mergeto=$query->param('mergeto');
 my $startfrom=$query->param('startfrom');
 my $authid=$query->param('authid');
 $startfrom=0 if(!defined $startfrom);
@@ -49,30 +45,29 @@ my @authtypesloop;
 foreach my $thisauthtype (sort { $authtypes->{$a} <=> $authtypes->{$b} } keys %$authtypes) {
        my $selected = 1 if $thisauthtype eq $authtypecode;
        my %row =(value => $thisauthtype,
-                               selected => $selected,
+                               selected => $selected, 
                                authtypetext => $authtypes->{$thisauthtype}{'authtypetext'},
                        );
        push @authtypesloop, \%row;
 }
 
+
 if ($op eq "do_search") {
        my @marclist = $query->param('marclist');
-       my @and_or = $query->param('and_or');
-       my @excluding = $query->param('excluding');
+       
        my @operator = $query->param('operator');
        my @value = $query->param('value');
 
        $resultsperpage= $query->param('resultsperpage');
-       $resultsperpage = 19 if(!defined $resultsperpage);
+       $resultsperpage = 10 unless $resultsperpage;
        my @tags;
-       my ($results,$total) = authoritysearch($dbh, \@marclist,\@and_or,
-                                                                               \@excluding, \@operator, \@value,
-                                                                               $startfrom*$resultsperpage, $resultsperpage,$authtypecode);
+       my ($results,$total) = authoritysearch($dbh, \@marclist, \@operator, \@value,$startfrom*$resultsperpage, $resultsperpage,$authtypecode) ;
        ($template, $loggedinuser, $cookie)
                = get_template_and_user({template_name => "authorities/searchresultlist.tmpl",
                                query => $query,
                                type => 'intranet',
                                authnotrequired => 0,
+                               authtypecode=> $authtypecode,
                                flagsrequired => {borrowers => 1},
                                flagsrequired => {catalogue => 1},
                                debug => 1,
@@ -92,8 +87,6 @@ if ($op eq "do_search") {
        for(my $i = 0 ; $i <= $#marclist ; $i++)
        {
                push @field_data, { term => "marclist", val=>$marclist_ini[$i] };
-               push @field_data, { term => "and_or", val=>$and_or[$i] };
-               push @field_data, { term => "excluding", val=>$excluding[$i] };
                push @field_data, { term => "operator", val=>$operator[$i] };
                push @field_data, { term => "value", val=>$value[$i] };
        }
@@ -104,7 +97,7 @@ if ($op eq "do_search") {
        {
                for (my $i=1; $i<$total/$resultsperpage+1; $i++)
                {
-                       if ($i<16)
+                       if ($i<31)
                        {
                        my $highlight=0;
                        ($startfrom==($i-1)) && ($highlight=1);
@@ -139,12 +132,11 @@ if ($op eq "do_search") {
                                                        to=>$to,
                                                        numbers=>\@numbers,
                                                        authtypecode=>$authtypecode,
-                                                       isEDITORS => $authtypecode eq 'EDITORS',
                                                        );
 
 } elsif ($op eq "delete") {
 
-       &AUTHdelauthority($dbh,$authid, 1);
+       &AUTHdelauthority($dbh,$authid);
 
        ($template, $loggedinuser, $cookie)
                = get_template_and_user({template_name => "authorities/authorities-home.tmpl",
@@ -154,11 +146,14 @@ if ($op eq "do_search") {
                                flagsrequired => {catalogue => 1},
                                debug => 1,
                                });
-#      $template->param("statements" => \@statements,
-#                                              "nbstatements" => $nbstatements);
-}
-elsif ($op eq "AddStatement") {
 
+
+}elsif ($op eq "merge") {
+
+
+       my $MARCfrom = XMLgetauthorityhash($dbh,$mergefrom);
+       my $MARCto = XMLgetauthorityhash($dbh,$mergeto);
+       merge($dbh,$mergefrom,$MARCfrom,$mergeto,$MARCto);
        ($template, $loggedinuser, $cookie)
                = get_template_and_user({template_name => "authorities/authorities-home.tmpl",
                                query => $query,
@@ -167,71 +162,7 @@ elsif ($op eq "AddStatement") {
                                flagsrequired => {catalogue => 1},
                                debug => 1,
                                });
-
-       # Gets the entered information
-       my @marcfields = $query->param('marclist');
-       my @and_or = $query->param('and_or');
-       my @excluding = $query->param('excluding');
-       my @operator = $query->param('operator');
-       my @value = $query->param('value');
-
-       my @statements = ();
-
-       # List of the marc tags to display
-       my $marcarray = create_marclist();
-
-       my $nbstatements = $query->param('nbstatements');
-       $nbstatements = 1 if(!defined $nbstatements);
-
-       for(my $i = 0 ; $i < $nbstatements ; $i++)
-       {
-               my %fields = ();
-
-               # Recreates the old scrolling lists with the previously selected values
-               my $marclist = create_scrolling_list({name=>"marclist",
-                                       values=> $marcarray,
-                                       size=> 1,
-                                       default=>$marcfields[$i],
-                                       onChange => "sql_update()"}
-                                       );
-
-               $fields{'marclist'} = $marclist;
-               $fields{'first'} = 1 if($i == 0);
-
-               # Restores the and/or parameters (no need to test the 'and' for activation because it's the default value)
-               $fields{'or'} = 1 if($and_or[$i] eq "or");
-
-               #Restores the "not" parameters
-               $fields{'not'} = 1 if($excluding[$i]);
-
-               #Restores the operators (most common operators first);
-               if($operator[$i] eq "=") { $fields{'eq'} = 1; }
-               elsif($operator[$i] eq "contains") { $fields{'contains'} = 1; }
-               elsif($operator[$i] eq "start") { $fields{'start'} = 1; }
-               elsif($operator[$i] eq ">") { $fields{'gt'} = 1; }      #greater than
-               elsif($operator[$i] eq ">=") { $fields{'ge'} = 1; } #greater or equal
-               elsif($operator[$i] eq "<") { $fields{'lt'} = 1; } #lower than
-               elsif($operator[$i] eq "<=") { $fields{'le'} = 1; } #lower or equal
-
-               #Restores the value
-               $fields{'value'} = $value[$i];
-
-               push @statements, \%fields;
-       }
-       $nbstatements++;
-
-       # The new scrolling list
-       my $marclist = create_scrolling_list({name=>"marclist",
-                               values=> $marcarray,
-                               size=>1,
-                               onChange => "sql_update()"});
-       push @statements, {"marclist" => $marclist };
-
-       $template->param("statements" => \@statements,
-                                               "nbstatements" => $nbstatements);
-
-}
-else {
+}else {
        ($template, $loggedinuser, $cookie)
                = get_template_and_user({template_name => "authorities/authorities-home.tmpl",
                                query => $query,
@@ -243,6 +174,8 @@ else {
 
 }
 
+
+
 $template->param(authtypesloop => \@authtypesloop);
 
 # Print the page