View | Details | Raw Unified | Return to bug 6027
Collapse All | Expand All

(-)a/koha-tmpl/intranet-tmpl/prog/en/modules/tools/batchMod-del.tmpl (-1 / +1 lines)
Lines 145-151 for( x=0; x<allColumns.length; x++ ){ Link Here
145
    <!-- /TMPL_UNLESS -->
145
    <!-- /TMPL_UNLESS -->
146
146
147
<!-- TMPL_IF name="action" -->
147
<!-- TMPL_IF name="action" -->
148
	<div class="dialog message"><p><!-- TMPL_VAR NAME="deleted_items" --> item(s) deleted.</p></div>
148
	<div class="dialog message"><p><!-- TMPL_VAR NAME="deleted_items" --> item(s) deleted.<br /><!-- TMPL_VAR NAME="deleted_biblios" --> biblio(s) deleted.</p></div>
149
	<!-- TMPL_IF NAME="not_deleted_items" -->
149
	<!-- TMPL_IF NAME="not_deleted_items" -->
150
	<div style="width:55%;margin:auto;">
150
	<div style="width:55%;margin:auto;">
151
	    <p><!-- TMPL_VAR NAME="not_deleted_items" --> item(s) could not be deleted: <!-- TMPL_LOOP NAME="not_deleted_itemnumbers" --><!-- TMPL_VAR NAME="itemnumber" --><!-- /TMPL_LOOP --></p>
151
	    <p><!-- TMPL_VAR NAME="not_deleted_items" --> item(s) could not be deleted: <!-- TMPL_LOOP NAME="not_deleted_itemnumbers" --><!-- TMPL_VAR NAME="itemnumber" --><!-- /TMPL_LOOP --></p>
(-)a/tools/batchMod.pl (-25 / +32 lines)
Lines 2-7 Link Here
2
2
3
3
4
# Copyright 2000-2002 Katipo Communications
4
# Copyright 2000-2002 Katipo Communications
5
# Copyright Biblibre 2010
5
#
6
#
6
# This file is part of Koha.
7
# This file is part of Koha.
7
#
8
#
Lines 76-81 my $frameworkcode=""; Link Here
76
my $tagslib = &GetMarcStructure(1,$frameworkcode);
77
my $tagslib = &GetMarcStructure(1,$frameworkcode);
77
78
78
my $deleted_items = 0;     # Numbers of deleted items
79
my $deleted_items = 0;     # Numbers of deleted items
80
my $deleted_biblios   = 0;    # Numbers of deleted biblios (when they have no more items)
79
my $not_deleted_items = 0; # Numbers of items that could not be deleted
81
my $not_deleted_items = 0; # Numbers of items that could not be deleted
80
my @not_deleted;           # List of the itemnumbers that could not be deleted
82
my @not_deleted;           # List of the itemnumbers that could not be deleted
81
83
Lines 129-159 if ($op eq "action") { Link Here
129
	}
131
	}
130
132
131
	# For each item
133
	# For each item
132
	my $i = 1; 
134
    	my $i = 1; 
133
	foreach my $itemnumber(@itemnumbers){
135
        foreach my $itemnumber(@itemnumbers){
134
136
135
		$job->progress($i) if $runinbackground;
137
            $job->progress($i) if $runinbackground;
136
		my $itemdata=GetItem($itemnumber);
138
            my $itemdata=GetItem($itemnumber);
137
		if ($input->param("del")){
139
            if ($input->param("del")){
138
			my $return = DelItemCheck(C4::Context->dbh, $itemdata->{'biblionumber'}, $itemdata->{'itemnumber'});
140
                my $return = DelItemCheck(C4::Context->dbh, $itemdata->{'biblionumber'}, $itemdata->{'itemnumber'});
139
			if ($return == 1) {
141
                if ($return == 1) {
140
			    $deleted_items++;
142
                    $deleted_items++;
141
			} else {
143
                } else {
142
			    $not_deleted_items++;
144
                    $not_deleted_items++;
143
			    push @not_deleted, { biblionumber => $itemdata->{'biblionumber'}, itemnumber => $itemdata->{'itemnumber'}, barcode => $itemdata->{'barcode'}, title => $itemdata->{'title'}, $return => 1 };
145
                    push @not_deleted, { biblionumber => $itemdata->{'biblionumber'}, itemnumber => $itemdata->{'itemnumber'}, barcode => $itemdata->{'barcode'}, title => $itemdata->{'title'}, $return => 1 };
144
			}
146
                }
145
		} else {
147
146
		    if ($something_to_modify) {
148
		# If there are no items left, we delete the biblio
147
			my $xml = TransformHtmlToXml(\@tags,\@subfields,\@values,\@indicator,\@ind_tag, 'ITEM');
149
		my $icount = GetItemsCount($itemdata->{'biblionumber'});
148
			my $marcitem = MARC::Record::new_from_xml($xml, 'UTF-8');
150
		if ($icount == 0) {
149
			my $localitem = TransformMarcToKoha( $dbh, $marcitem, "", 'items' );
151
		    DelBiblio($itemdata->{'biblionumber'});
150
			my $localmarcitem=Item2Marc($itemdata);
152
		    $deleted_biblios++;
151
			UpdateMarcWith($marcitem,$localmarcitem);
152
			eval{my ($oldbiblionumber,$oldbibnum,$oldbibitemnum) = ModItemFromMarc($localmarcitem,$itemdata->{biblionumber},$itemnumber)};
153
		    }
154
		}
153
		}
155
		$i++;
154
156
	}
155
            } else {
156
            if ($values_to_modify||$values_to_blank) {
157
                my $localmarcitem=Item2Marc($itemdata);
158
                UpdateMarcWith($marcitem,$localmarcitem);
159
                eval{my ($oldbiblionumber,$oldbibnum,$oldbibitemnum) = ModItemFromMarc($localmarcitem,$itemdata->{biblionumber},$itemnumber)};
160
                }
161
            }
162
            $i++;
163
        }
157
    }
164
    }
158
}
165
}
159
#
166
#
Lines 401-406 if ($op eq "action") { Link Here
401
408
402
    $template->param(
409
    $template->param(
403
	not_deleted_items => $not_deleted_items,
410
	not_deleted_items => $not_deleted_items,
411
    deleted_biblios    => $deleted_biblios,
404
	deleted_items => $deleted_items,
412
	deleted_items => $deleted_items,
405
	not_deleted_loop => \@not_deleted 
413
	not_deleted_loop => \@not_deleted 
406
    );
414
    );
407
- 

Return to bug 6027