Bug 30435: Remove unused MACLES cataloging plugin
authorOwen Leonard <oleonard@myacpl.org>
Fri, 1 Apr 2022 15:20:47 +0000 (15:20 +0000)
committerFridolin Somers <fridolin.somers@biblibre.com>
Wed, 20 Apr 2022 07:25:51 +0000 (21:25 -1000)
This patch removes the files associated with the MACLES cataloging
plugin. The feature is unmaintained.

Signed-off-by: Caroline Cyr La Rose <caroline.cyr-la-rose@inlibro.com>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
cataloguing/value_builder/macles.pl [deleted file]
koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/macles.tt [deleted file]

diff --git a/cataloguing/value_builder/macles.pl b/cataloguing/value_builder/macles.pl
deleted file mode 100755 (executable)
index 8579dc0..0000000
+++ /dev/null
@@ -1,170 +0,0 @@
-#!/usr/bin/perl 
-
-# Converted to new plugin style (Bug 13437)
-
-# Copyright 2000-2002 Katipo Communications
-#
-# This file is part of Koha.
-#
-# Koha is free software; you can redistribute it and/or modify it
-# under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 3 of the License, or
-# (at your option) any later version.
-#
-# Koha is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with Koha; if not, see <http://www.gnu.org/licenses>.
-
-use Modern::Perl;
-use CGI qw ( -utf8 );
-
-use C4::Context;
-use C4::Output qw( output_html_with_http_headers );
-use C4::Auth qw( get_template_and_user );
-
-my $builder = sub {
-    my ( $params ) = @_;
-    my $function_name = $params->{id};
-    my $res="
-<script>
-function Click$function_name(i) {
-    newin=window.open(\"../cataloguing/plugin_launcher.pl?plugin_name=macles.pl&index=\"+i,\"MACLES\",',toolbar=false,scrollbars=yes');
-}
-</script>
-";
-    return $res;
-};
-
-my $launcher = sub {
-    my ( $params ) = @_;
-    my $input = $params->{cgi};
-       my $index= $input->param('index');
-
-       my $dbh = C4::Context->dbh;
-    my $rq=$dbh->prepare("SELECT authorised_value, lib from authorised_values where category=\"MACLES\" order by authorised_value DESC");
-    #tabs
-    $rq->execute;
-    my @BIGLOOP;
-    my (%numbers,@lists,$table);
-    while (my $tab = $rq->fetchrow_hashref){
-      my $number=substr($tab->{authorised_value},0,1);
-      if ($tab->{authorised_value}=~/[0-9]XX/){
-        $numbers{$number}->{'hdr_tab'}=$tab->{lib};
-        $numbers{$number}->{'Table'}=($number=~/[1-7]/);
-      } elsif ($tab->{authorised_value}=~/.X./){
-        $tab->{authorised_value}=~s/X/\./;
-        $table=1;
-        unshift @{$numbers{$number}->{"col_hdr"}},{"colvalue"=>$tab->{authorised_value},"collib"=>$tab->{lib}};
-      } elsif ($tab->{authorised_value}=~/..X/){
-        $tab->{authorised_value}=~s/X/\./;
-        unshift @{$numbers{$number}->{"row_hdr"}},{"rowvalue"=>$tab->{authorised_value},"rowlib"=>$tab->{lib}}
-      } elsif ($tab->{'authorised_value'}=~/,/){
-        my @listval=split /,/,$tab->{'authorised_value'};
-#          $tab->{authorised_value}=~s/,/","/g;
-#         $tab->{authorised_value}="(".$tab->{authorised_value}.")";
-        my %mulrows;
-        foreach my $val (@listval){
-          unshift @{$numbers{$number}->{$val}},$tab->{'lib'};
-          my $mulrow=substr($val,0,2);
-          $mulrows{$mulrow}=1;
-        }
-        foreach my $mulrow (sort keys %mulrows){
-          unshift @{$numbers{$number}->{$mulrow}},{'listlib' => $tab->{'lib'},'listvalue' => $tab->{'authorised_value'}};
-        }
-      } else {
-        unshift @{$numbers{$number}->{$tab->{'authorised_value'}}},$tab->{'lib'};
-      }
-    }
-    foreach my $num ( sort keys %numbers ) {
-        my @tmpcolhdr;
-        my @tmprowhdr;
-        @tmpcolhdr = @{ $numbers{$num}->{'col_hdr'} }
-          if ( $numbers{$num}->{'col_hdr'} );
-        @tmprowhdr = @{ $numbers{$num}->{"row_hdr"} }
-          if ( $numbers{$num}->{'row_hdr'} );
-        my @lines;
-        my @lists;
-        my %BIGLOOPcell;
-        foreach my $row (@tmprowhdr) {
-            my $tmprowvalue = $row->{rowvalue};
-            my $rowcode;
-            $rowcode = $1 if $tmprowvalue =~ /[0-9]([0-9])\./;
-            my @cells;
-            if ( scalar(@tmpcolhdr) > 0 ) {
-
-                #cas du tableau bidim
-                foreach my $col (@tmpcolhdr) {
-                    my $tmpcolvalue = $col->{colvalue};
-                    my $colcode;
-                    $colcode = $1 if $tmpcolvalue =~ /[0-9]\.([0-9])/;
-                    my %cell;
-                    $cell{celvalue} = $num . $rowcode . $colcode;
-                    $cell{rowvalue} = $tmprowvalue;
-                    $cell{colvalue} = $tmpcolvalue;
-                    if ( $numbers{$num}->{ $num . $rowcode . $colcode } ) {
-
-                        foreach (
-                            @{ $numbers{$num}->{ $num . $rowcode . $colcode } }
-                          )
-                        {
-                            push @{ $cell{libs} }, { 'lib' => $_ };
-                        }
-                    }
-                    else {
-                        push @{ $cell{libs} },
-                          { 'lib' => $num . $rowcode . $colcode };
-                    }
-                    push @cells, \%cell;
-                }
-                if ( $numbers{$num}->{ $num . $rowcode } ) {
-                    my @tmpliblist = @{ $numbers{$num}->{ $num . $rowcode } };
-                    push @lists,
-                      { 'lib' => $row->{rowlib}, 'liblist' => \@tmpliblist };
-                }
-            }
-            else {
-
-                #Cas de la liste simple
-                foreach my $key ( sort keys %{ $numbers{$num} } ) {
-                    my %cell;
-                    if ( $key =~ /$num$rowcode[0-9]/ ) {
-                        $cell{celvalue} = $key;
-                        foreach my $lib ( @{ $numbers{$num}->{$key} } ) {
-                            push @{ $cell{'libs'} }, { 'lib' => $lib };
-                        }
-                        push @cells, \%cell;
-                    }
-                }
-            }
-            push @lines,
-              {
-                'cells'    => \@cells,
-                'rowvalue' => $row->{rowvalue},
-                'rowlib'   => $row->{rowlib}
-              };
-        }
-        $BIGLOOPcell{'Lists'}   = \@lists     if ( scalar(@lists) > 0 );
-        $BIGLOOPcell{'lines'}   = \@lines     if ( scalar(@lines) > 0 );
-        $BIGLOOPcell{'col_hdr'} = \@tmpcolhdr if ( scalar(@tmpcolhdr) > 0 );
-        $BIGLOOPcell{'Table'}   = $numbers{$num}->{'Table'};
-        $BIGLOOPcell{'hdr_tab'} = $numbers{$num}->{'hdr_tab'};
-        $BIGLOOPcell{'number'}  = $num;
-        push @BIGLOOP, \%BIGLOOPcell;
-    }
-
-    my ($template, $loggedinuser, $cookie)
-        = get_template_and_user({template_name => "cataloguing/value_builder/macles.tt",
-                    query => $input,
-                    type => "intranet",
-                    flagsrequired => {editcatalogue => '*'},
-                    });
-    $template->param(BIGLOOP=>\@BIGLOOP);
-       $template->param("index"=>$index);
-       output_html_with_http_headers $input, $cookie, $template->output;
-};
-
-return { builder => $builder, launcher => $launcher };
diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/macles.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/macles.tt
deleted file mode 100644 (file)
index 480ab37..0000000
+++ /dev/null
@@ -1,250 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD Xhtml 1.0 Transitional//EN"
-    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<title>Gestion des index MACLES</title>
-[% INCLUDE 'doc-head-close.inc' %]
-<script>
-//<![CDATA[
-
-    $(document).ready(function() {
-        $('#macles').tabs();
-    });
-//]]>
-</script>
-</head>
-
-<body id="cat_macles" class="cat" onload="Activate(0);load_macles();" >
-
-<h1>Gestion des index MACLES</h1>
-<form name="f_pop" action="">
-
-<div id="macles" class="toptabs numbered">
-    [% IF ( BIGLOOP ) %]<ul>
-    [% FOREACH BIGLOO IN BIGLOOP %]
-        <li><a href="#tab[% BIGLOO.number | uri %]XX">[% BIGLOO.number | html %]</a></li>
-    [% END %]
-    </ul>[% END %]
-    <!-- RESET PAGINATION -->
-    [% FOREACH BIGLOO IN BIGLOOP %]
-    [% IF ( BIGLOO.number ) %]
-        <div id="tab[% BIGLOO.number | html %]XX">
-    [% ELSE %]
-        <div id="tab[% BIGLOO.number | html %]XX">
-    [% END %]
-            <h2> [% BIGLOO.hdr_tab | html %]</h2>
-            <a href="#" class="button" onclick="add_macles('630');">Envoyer</a>
-            <!-- <input type="submit" class="button" value="Envoyer" /> -->
-            <a class="button" href="" onclick="load_macles(630);">R&eacute;initialiser</a>
-            <a class="button" href="javascript:uncheck_tab([% BIGLOO.number | html %])">d&eacute;selectionner onglet</a>
-            <input type="reset" class="button" value="déselectionner tout" />
-            [% IF ( BIGLOO.Table ) %]
-            <table>
-                <tr>
-                <th>Espace\Temps</th>
-                [% FOREACH col_hd IN BIGLOO.col_hdr %]
-                    <th scope="col" id="[% col_hd.colvalue | html %]">  [% col_hd.collib | html %] <br /><input type="checkbox" name="[% col_hd.colvalue | html %]" onclick="check_col('[% col_hd.colvalue | html %]')" />
-                    </th>
-                [% END %]
-                </tr>
-                [% FOREACH line IN BIGLOO.lines %]
-                <tr>
-                    <th scope="row" id="[% line.rowvalue | html %]">  [% line.rowlib | html %] <br /><input type="checkbox" name="[% line.rowvalue | html %]" onclick="check_row('[% line.rowvalue | html %]')" />
-                    </th>
-                    [% FOREACH cell IN line.cells %]
-                    <td headers="[% cell.rowvalue | html %] [% cell.colvalue | html %]">
-                    [% BLOCK spantitle %][% FOREACH lib IN cell.libs %][% lib.lib | html %] - [% END %][% END %]
-                    <span title="[% INCLUDE spantitle %]">
-                    [% cell.celvalue | html %] <br /><input type="checkbox" name="[% cell.celvalue | html %]" value="[% cell.celvalue | html %]" />
-                    </span>
-                    </td>
-                    [% END %]
-                </tr>
-                [% END %]
-            </table>
-            [% END %]
-            [% IF ( BIGLOO.Lists ) %]
-            <h2>s&eacute;lection au moyen d'une liste de descripteurs</h2>
-            [% FOREACH List IN BIGLOO.Lists %]
-                <h3>[% List.lib | html %]</h3>
-                [% FOREACH liblis IN List.liblist %]
-                <a href="#[% liblis.listvalue | uri %]" onclick="check_multiple([% liblis.listvalue | html %])"> [% liblis.listlib | html %]</a><br />
-                [% END %]
-            [% END %]
-            [% END %]
-            [% UNLESS ( BIGLOO.Table ) %]
-            <!-- Listes simples :Onglets 0 et 9-->
-            [% FOREACH line IN BIGLOO.lines %]
-                <h3>[% line.rowvalue | html %]&nbsp;-&nbsp;[% line.rowlib | html %]&nbsp;<input type="checkbox" name="[% line.rowvalue | html %]" onclick="check_row('[% line.rowvalue | html %]')" /></h3>
-                [% FOREACH cell IN line.cells %]
-                <p>[% cell.celvalue | html %]&nbsp;-&nbsp;[% FOREACH lib IN cell.libs %]
-                        [% lib.lib | html %] &nbsp;
-                    [% END %]
-                    <input type="checkbox" name="[% cell.celvalue | html %]" value="[% cell.celvalue | html %]" />
-                </p>
-                [% END %]
-            [% END %]
-            [% END %]
-        </div>
-    [% END %]
-</div>
-</form>
-<script>
-//<![CDATA[
-function Activate(numlayer)
-{
-       for (var i=0; i <= 9 ; i++ ) {
-               var ong = i+"XX";
-               var link = "link"+i;
-               if (numlayer==i) {
-                       with(document){
-                       if (document.getElementById(ong)){
-                               document.getElementById(ong).style.visibility="visible";
-                       }
-                       if(document.getElementById(link)){
-                               document.getElementById(link).style.color="#000066";
-                               document.getElementById(link).style.backgroundColor="#FFFFCC";
-                       }
-                       }
-               } else {
-                       with(document){
-                       if (document.getElementById(ong)){
-                               document.getElementById(ong).style.visibility="hidden";
-                       }
-                       if (document.getElementById(link)) {
-                               document.getElementById(link).style.color="#669999";
-                               document.getElementById(link).style.backgroundColor="#D8DEB8";
-                       }
-                       }
-               }
-       }
-}
-
-function add_macles(myvalue)
-{
-  var myinputs=document.getElementsByTagName("input");
-  var mycountMACLESgen=0;
-  var tab = new Array();
-  for (var i=0;i<myinputs.length;i++){
-    if (myinputs[i].checked) {
-      tab[mycountMACLESgen]=myinputs[i].value;
-      mycountMACLESgen++;
-    }
-  }
-  if (mycountMACLESgen==1){opener.document.f.[% index | html %].value = tab[0];
-  } else {
-    var mytags=opener.document.getElementsByTagName("input");
-    var index_string="[% index | html %]";
-    index_string=index_string.substr(0,index_string.lastIndexOf("_"));  
-    index_string=index_string.substr(0,index_string.lastIndexOf("_"));
-    index_string=index_string+".*";    
-    var mycountMACLESinit=0;
-    var indexmin=0;
-    var tab_ids_fields=new Array();  
-    //Compter le nombre de MACLES present
-    for (i=0;i<mytags.length;i++){
-      if (mytags[i].name.match(index_string)){
-        if (mytags[i].value==myvalue) {
-            if (indexmin==0){
-                indexmin=i
-            }
-        }
-        tab_ids_fields[mycountMACLESinit]=mytags[i].getAttribute("id");
-        mycountMACLESinit++;
-      }   
-    }
-    // Si Nombre de Macles <Nombre de cases cochees, ajouter le nombre de champ manquant
-    if (mycountMACLESinit < mycountMACLESgen){
-    //for (i=0;i< (mycountMACLESgen - mycountMACLESinit);i++){
-    //  PluginAddField(myvalue);
-    //}
-      alert(_("veuillez d'abord creer le nombre de champs necessaires "));
-    } else {
-    // Pour chaque valeur cochee, ajouter la valeur dans un noeud MACLES.
-      for (i=0;i<tab.length;i++){
-          // Se positionner sur le prochain noeud MACLES
-          opener.document.f.elements[tab_ids_fields[i]].value = tab[i];
-      }
-    }
-  }
-  window.close();
-  return false;
-}
-
-function uncheck_tab(number)
-{
-  var myinputs=document.getElementsByTagName("input");
-  var myRegEx=new RegExp(number+"..");
-  for(i=0;i<myinputs.length;i++){
-    if ((myinputs[i].name.search(myRegEx)>=0) && myinputs[i].checked == true) {
-      myinputs[i].checked = false;
-    }
-  }
-}
-function check_col(col)
-{
-  var myref=document.getElementsByName(col);
-  var myinputs=document.getElementsByTagName("input");
-  var myRegEx=new RegExp(col);
-  for(i=0;i<myinputs.length;i++){
-    if (myinputs[i].name.search(myRegEx)>=0) {
-      if (myref[0].checked){
-        myinputs[i].checked = true;
-      } else {
-        myinputs[i].checked = false;
-      }
-    } 
-  }
-  return false;
-}
-
-function check_multiple()
-{
-  for(myi=0;myi<check_multiple.arguments.length;myi++){
-    var myinput=document.getElementsByName(""+check_multiple.arguments[myi]);
-    myinput[0].checked=true;
-  }
-  return false;
-}
-
-function check_row(row)
-{
-  var myref=document.getElementsByName(row);
-  var myinputs=document.getElementsByTagName("input");
-  var myRegEx=new RegExp(row);
-//   alert myRegEx;
-  for(i=0;i<myinputs.length;i++){
-    if (myinputs[i].name.search(myRegEx)>=0){
-      if (myref[0].checked){
-        myinputs[i].checked = true;
-      } else {
-        myinputs[i].checked = false;
-      }
-    } 
-  }
-  return false;
-}
-
-function load_macles()
-{
-  document.forms.f_pop.reset;
-  var mystart="[% index | html %]";
-  mystart=mystart.substr(0,mystart.lastIndexOf("_"));  
-  mystart=mystart.substr(0,mystart.lastIndexOf("_"));
-  mystart=mystart+".*";    
-  var mytags=opener.document.getElementsByTagName("input");
-  for (i=0;i<mytags.length;i++){
-    if (mytags[i].name.match(mystart)){
-      var checkvalue=mytags[i].value;
-      var myinput=document.getElementsByName(checkvalue);
-      if (myinput.length>0){
-        myinput[0].checked=true;
-      }
-    }  
-  } 
-  return false;
-}
-//]]>
-</script>
-</body>
-</html>