#!/usr/bin/perl
-# Copyright 2000-2002 Katipo Communications
+# Copyright Biblibre 2007
#
# This file is part of Koha.
#
# 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, write to the Free Software Foundation, Inc., 59 Temple Place,
-# Suite 330, Boston, MA 02111-1307 USA
+# You should have received a copy of the GNU General Public License along
+# with Koha; if not, write to the Free Software Foundation, Inc.,
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
use strict;
+#use warnings; FIXME - Bug 2505
use CGI;
use C4::Output;
function Clic$function_name(i) {
defaultvalue=document.getElementById(\"$field_number\").value;
- window.open(\"/cgi-bin/koha/cataloguing/plugin_launcher.pl?plugin_name=unimarc_field_4XX.pl&index=\" + i + \"&result=\"+defaultvalue,\"unimarc field 4\"+i+\"\",'width=900,height=700,toolbar=false,scrollbars=yes');
+ window.open(\"/cgi-bin/koha/cataloguing/plugin_launcher.pl?plugin_name=unimarc_field_4XX.pl&index=\" + i + \"&result=\"+defaultvalue,\"unimarc_field_4\"+i+\"\",'width=900,height=700,toolbar=false,scrollbars=yes');
}
</script>
# sub plugin
#
-# input arg :
+# input arg :
# -- op could be equals to
-# * fillinput :
-# * do_search :
-#
+# * fillinput :
+# * do_search :
+#
sub plugin {
my ($input) = @_;
$subfield_value_a .= " " . $marcrecord->subfield( '700', "d" )
if $marcrecord->subfield( '700', 'd' );
$subfield_value_a .=
- " (" . $marcrecord->subfield( '700', 'c' ) . " - "
+ " (" . $marcrecord->subfield( '700', 'c' )
if $marcrecord->subfield( '700', 'c' );
+ $subfield_value_a .= " ; "
+ if $marcrecord->subfield( '700', 'c' )
+ and $marcrecord->subfield( '700', 'f' );
$subfield_value_a .= " ("
if ( $marcrecord->subfield( '700', 'f' )
and not( $marcrecord->subfield( '700', 'c' ) ) );
$subfield_value_a .= $marcrecord->subfield( '700', 'f' )
if ( $marcrecord->subfield( '700', 'f' ) );
$subfield_value_a .= ")"
- if ( $marcrecord->subfield( '701', 'f' )
- or $marcrecord->subfield( '701', 'c' ) );
+ if ( $marcrecord->subfield( '700', 'f' )
+ or $marcrecord->subfield( '700', 'c' ) );
}
elsif ( $marcrecord->field('702') ) {
$subfield_value_a = $marcrecord->subfield( '702', 'a' );
$subfield_value_a .= " " . $marcrecord->subfield( '702', 'd' )
if $marcrecord->subfield( '702', 'd' );
$subfield_value_a .=
- " (" . $marcrecord->subfield( '702', 'c' ) . "; "
+ " (" . $marcrecord->subfield( '702', 'c' )
if $marcrecord->subfield( '702', 'c' );
+ $subfield_value_a .= " ; "
+ if $marcrecord->subfield( '702', 'c' )
+ and $marcrecord->subfield( '702', 'f' );
$subfield_value_a .= " ("
if $marcrecord->subfield( '702', 'f' )
and not $marcrecord->subfield( '702', 'c' );
" (" . $marcrecord->subfield( '712', 'f' ) . " - "
if $marcrecord->subfield( '712', 'f' );
$subfield_value_a .= " ("
- if $marcrecord->field( '712', "e" )
+ if $marcrecord->subfield( '712', "e" )
and not $marcrecord->subfield( '712', 'f' );
$subfield_value_a .= $marcrecord->subfield( '712', 'e' )
if $marcrecord->subfield( '712', 'e' );
elsif ( $marcrecord->field('200') ) {
$subfield_value_a = $marcrecord->subfield( '200', 'f' );
}
- my $subfield_value_c = $marcrecord->field('210')->subfield("a")
+ my $subfield_value_c;
+ my $subfield_value_d;
+ my $subfield_value_e;
+ $subfield_value_c = $marcrecord->field('210')->subfield("a")
if ( $marcrecord->field('210') );
- my $subfield_value_d = $marcrecord->field('210')->subfield("d")
+ $subfield_value_d = $marcrecord->field('210')->subfield("d")
if ( $marcrecord->field('210') );
-
- my $subfield_value_e = $marcrecord->field('205')->subfield("a")
+ $subfield_value_e = $marcrecord->field('205')->subfield("a")
if ( $marcrecord->field('205') );
my $subfield_value_h;
$subfield_value_i = $marcrecord->field('500')->subfield("i");
}
- my $subfield_value_p = $marcrecord->field('215')->subfield("a")
+ my $subfield_value_p;
+ $subfield_value_p = $marcrecord->field('215')->subfield("a")
if ( $marcrecord->field('215') );
my $subfield_value_t;
$subfield_value_t = $marcrecord->field('500')->subfield("a");
}
- my $subfield_value_u = $marcrecord->field('856')->subfield("u")
- if ( $marcrecord->field('856') );
+ my $subfield_value_u;
+ if ( $marcrecord->field('856') ) {
+ $subfield_value_u = $marcrecord->field('856')->subfield("u");
+ }
my $subfield_value_v;
if ( ( $marcrecord->field('225') )
{
$subfield_value_v = $marcrecord->field('200')->subfield("h");
}
- my $subfield_value_x = $marcrecord->field('011')->subfield("a")
- if (
+ my $subfield_value_x;
+ if (
$marcrecord->field('011')
and not( ( $marcrecord->field('011')->subfield("y") )
- or ( $marcrecord->field('011')->subfield("z") ) )
- );
- my $subfield_value_y = $marcrecord->field('013')->subfield("a")
- if ( $marcrecord->field('013') );
+ or ( $marcrecord->field('011')->subfield("z") ) ) ) {
+ $subfield_value_x = $marcrecord->field('011')->subfield("a");
+ }
+ my $subfield_value_y;
+ if ( $marcrecord->field('013') ) {
+ $subfield_value_y = $marcrecord->field('013')->subfield("a");
+ }
if ( $marcrecord->field('010') ) {
$subfield_value_y = $marcrecord->field('010')->subfield("a");
}
my $startfrom = $query->param('startfrom');
my $resultsperpage = $query->param('resultsperpage') || 20;
my $orderby;
- $search = 'kw,wrdl='.$search.' and mc-itemtype='.$itype if $itype;
+ my $QParser;
+ $QParser = C4::Context->queryparser if (C4::Context->preference('UseQueryParser'));
+ my $op;
+ if ($QParser) {
+ $op = '&&';
+ } else {
+ $op = 'and';
+ }
+ $search = 'kw:'.$search." $op mc-itemtype:".$itype if $itype;
my ( $errors, $results, $total_hits ) = SimpleSearch($search, $startfrom * $resultsperpage, $resultsperpage );
- my $total = scalar(@$results);
+ if (defined $errors ) {
+ $results = [];
+ }
+ my $total = @{$results};
# warn " biblio count : ".$total;
"cataloguing/value_builder/unimarc_field_4XX.tmpl",
query => $query,
type => 'intranet',
- authnotrequired => 1,
+ authnotrequired => 0,
debug => 1,
}
);
my $record = MARC::Record::new_from_usmarc( $results->[$i] );
my $rechash = TransformMarcToKoha( $dbh, $record );
my $pos;
- my $countitems = 1 if ( $rechash->{itemnumber} );
+ my $countitems;
+ if ( $rechash->{itemnumber} ) {
+ $countitems=1;
+ }
while ( index( $rechash->{itemnumber}, '|', $pos ) > 0 ) {
$countitems += 1;
$pos = index( $rechash->{itemnumber}, '|', $pos ) + 1;
my $defaultview =
'BiblioDefaultView' . C4::Context->preference('BiblioDefaultView');
# my $link="/cgi-bin/koha/cataloguing/value_builder/unimarc4XX.pl?op=do_search&q=$search_desc&resultsperpage=$resultsperpage&startfrom=$startfrom&search=$search";
-# foreach my $sort (@sort_by){
+# foreach my $sort (@sort_by){
# $link.="&sort_by=".$sort."&";
-# }
+# }
# $template->param(
# pagination_bar => pagination_bar(
# $link,
# $page,
# 'page'
# ),
-# );
+# );
$template->param(
result => \@arrayresults,
index => $query->param('index') . "",
"cataloguing/value_builder/unimarc_field_4XX.tmpl",
query => $query,
type => "intranet",
- authnotrequired => 1,
+ authnotrequired => 0,
}
);
);
$sth->finish;
- my @branchloop;
- my @select_branch;
- my %select_branches;
- my $branches = GetBranches;
- push @select_branch, "";
- $select_branches{''} = "";
- foreach my $thisbranch ( keys %$branches ) {
- push @select_branch, $branches->{$thisbranch}->{'branchcode'};
- $select_branches{ $branches->{$thisbranch}->{'branchcode'} } =
- $branches->{$thisbranch}->{'branchname'};
- }
- my $CGIbranch = CGI::scrolling_list(
- -name => 'value',
- -values => \@select_branch,
- -labels => \%select_branches,
- -size => 1,
- -multiple => 0
- );
- $sth->finish;
+ # To show list of branches please use GetBranchesLoop() and modify template
my $req =
$dbh->prepare(
$template->param( #classlist => $classlist,
CGIitemtype => $CGIitemtype,
- CGIbranch => $CGIbranch,
CGIPublisher => $CGIpublisher,
itypeloop => \@itemtypes,
index => $query->param('index'),