diff --git a/C4/Record.pm b/C4/Record.pm index 3b073987fc..8e09adf2c3 100644 --- a/C4/Record.pm +++ b/C4/Record.pm @@ -362,7 +362,7 @@ sub marcrecord2csv { # Getting the record my $record = GetMarcBiblio($biblio); - + next unless $record; # Getting the framework my $frameworkcode = GetFrameworkCode($biblio); diff --git a/acqui/basketgroup.pl b/acqui/basketgroup.pl index a3b7dc940c..69de0990dc 100755 --- a/acqui/basketgroup.pl +++ b/acqui/basketgroup.pl @@ -238,7 +238,10 @@ sub printbasketgrouppdf{ } $orders{$basket->{basketno}}=\@ba_orders; } - print $input->header( -type => 'application/pdf', -attachment => $basketgroup->{name}.'.pdf' ); + print $input->header( + -type => 'application/pdf', + -attachment => ( $basketgroup->{name} || $basketgroupid ) . '.pdf' + ); my $pdf = printpdf($basketgroup, $bookseller, $baskets, \%orders, $bookseller->{gstrate} || C4::Context->preference("gist")) || die "pdf generation failed"; print $pdf; exit; diff --git a/acqui/newordersuggestion.pl b/acqui/newordersuggestion.pl index ba966b6620..156dab8f0b 100755 --- a/acqui/newordersuggestion.pl +++ b/acqui/newordersuggestion.pl @@ -133,7 +133,7 @@ my $suggestions_loop = author => $author, title => $title, publishercode => $publishercode, - status => 'ACCEPTED'}); + STATUS => 'ACCEPTED'}); my $vendor = GetBookSellerFromId($supplierid); $template->param( suggestions_loop => $suggestions_loop, diff --git a/debian/rules b/debian/rules index 2a8aa0d1c0..25f111a6c8 100755 --- a/debian/rules +++ b/debian/rules @@ -55,6 +55,38 @@ override_dh_auto_install: install -m 0644 koha-tmpl/opac-tmpl/prog/en/lib/yui/skin.css \ koha-tmpl/opac-tmpl/prog/en/lib/yui/reset-fonts-grids.css \ $(TMP)/usr/share/koha/opac/htdocs/opac-tmpl/prog/en/css + install -m 0644 koha-tmpl/intranet-tmpl/prog/en/lib/yui/menu-button-arrow-disabled.png \ + $(TMP)/usr/share/koha/opac/htdocs/opac-tmpl/prog/en/css + install -m 0644 koha-tmpl/intranet-tmpl/prog/en/lib/yui/menu-button-arrow-disabled.png \ + $(TMP)/usr/share/koha/intranet/htdocs/intranet-tmpl/prog/en/css + install -m 0644 koha-tmpl/intranet-tmpl/prog/en/lib/yui/menu-button-arrow.png \ + $(TMP)/usr/share/koha/opac/htdocs/opac-tmpl/prog/en/css + install -m 0644 koha-tmpl/intranet-tmpl/prog/en/lib/yui/menu-button-arrow.png \ + $(TMP)/usr/share/koha/intranet/htdocs/intranet-tmpl/prog/en/css + install -m 0644 koha-tmpl/intranet-tmpl/prog/en/lib/yui/split-button-arrow-active.png \ + $(TMP)/usr/share/koha/opac/htdocs/opac-tmpl/prog/en/css + install -m 0644 koha-tmpl/intranet-tmpl/prog/en/lib/yui/split-button-arrow-active.png \ + $(TMP)/usr/share/koha/intranet/htdocs/intranet-tmpl/prog/en/css + install -m 0644 koha-tmpl/intranet-tmpl/prog/en/lib/yui/split-button-arrow-disabled.png \ + $(TMP)/usr/share/koha/opac/htdocs/opac-tmpl/prog/en/css + install -m 0644 koha-tmpl/intranet-tmpl/prog/en/lib/yui/split-button-arrow-disabled.png \ + $(TMP)/usr/share/koha/intranet/htdocs/intranet-tmpl/prog/en/css + install -m 0644 koha-tmpl/intranet-tmpl/prog/en/lib/yui/split-button-arrow-focus.png \ + $(TMP)/usr/share/koha/opac/htdocs/opac-tmpl/prog/en/css + install -m 0644 koha-tmpl/intranet-tmpl/prog/en/lib/yui/split-button-arrow-focus.png \ + $(TMP)/usr/share/koha/intranet/htdocs/intranet-tmpl/prog/en/css + install -m 0644 koha-tmpl/intranet-tmpl/prog/en/lib/yui/split-button-arrow-hover.png \ + $(TMP)/usr/share/koha/opac/htdocs/opac-tmpl/prog/en/css + install -m 0644 koha-tmpl/intranet-tmpl/prog/en/lib/yui/split-button-arrow-hover.png \ + $(TMP)/usr/share/koha/intranet/htdocs/intranet-tmpl/prog/en/css + install -m 0644 koha-tmpl/intranet-tmpl/prog/en/lib/yui/split-button-arrow.png \ + $(TMP)/usr/share/koha/opac/htdocs/opac-tmpl/prog/en/css + install -m 0644 koha-tmpl/intranet-tmpl/prog/en/lib/yui/split-button-arrow.png \ + $(TMP)/usr/share/koha/intranet/htdocs/intranet-tmpl/prog/en/css + install -m 0644 koha-tmpl/intranet-tmpl/prog/en/lib/yui/sprite.png \ + $(TMP)/usr/share/koha/opac/htdocs/opac-tmpl/prog/en/css + install -m 0644 koha-tmpl/intranet-tmpl/prog/en/lib/yui/sprite.png \ + $(TMP)/usr/share/koha/intranet/htdocs/intranet-tmpl/prog/en/css sed -i -e 's:url(.*/reset-fonts-grids.css.*):url(reset-fonts-grids.css):' \ -e 's:url(.*/skin.css.*):url(skin.css):' \ $(TMP)/usr/share/koha/opac/htdocs/opac-tmpl/prog/en/css/opac.css \ diff --git a/debian/scripts/koha-remove b/debian/scripts/koha-remove index de3fe1ccc6..97399cca35 100755 --- a/debian/scripts/koha-remove +++ b/debian/scripts/koha-remove @@ -30,6 +30,7 @@ DROP DATABASE koha_$name; FLUSH PRIVILEGES; eof + koha-stop-zebra $name rm "/etc/apache2/sites-available/$name" rm "/etc/koha/sites/$name/koha-conf.xml" rm "/etc/koha/sites/$name/zebra-biblios.cfg" diff --git a/etc/zebradb/ccl.properties b/etc/zebradb/ccl.properties index 3dbf9be755..231c420d6e 100644 --- a/etc/zebradb/ccl.properties +++ b/etc/zebradb/ccl.properties @@ -775,6 +775,19 @@ Host-item 1=1033 # language and/or script. #Title-parallel 1=35 +#Video +video-mt 1=Video-mt +Video-mt video-mt +Graphics-type 1=Graphic-type +Graphics-support 1=Graphic-support +Type-Of-Serial 1=Type-Of-Serial +Frequency-code 1=Frequency-code +Regularity-code 1=Regularity-code +Material-type 1=Material-type +Literature-Code 1=Literature-Code +Biography-code 1=Biography-code +Illustration-code 1=Illustration-code + #Title-related- 1026 Serial titles related to this 247, 780, 785 #periodical item, either the immediate # predecessor or the immediate diff --git a/installer/data/mysql/kohastructure.sql b/installer/data/mysql/kohastructure.sql index d8ed27de14..e42cecd475 100644 --- a/installer/data/mysql/kohastructure.sql +++ b/installer/data/mysql/kohastructure.sql @@ -104,7 +104,8 @@ CREATE TABLE `authorised_values` ( `imageurl` varchar(200) default NULL, PRIMARY KEY (`id`), KEY `name` (`category`), - KEY `lib` (`lib`) + KEY `lib` (`lib`), + KEY `auth_value_idx` (`authorised_value`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- @@ -279,7 +280,8 @@ CREATE TABLE `borrower_attribute_types` ( `password_allowed` tinyint(1) NOT NULL default 0, `staff_searchable` tinyint(1) NOT NULL default 0, `authorised_value_category` varchar(10) default NULL, - PRIMARY KEY (`code`) + PRIMARY KEY (`code`), + KEY `auth_val_cat_idx` (`authorised_value_category`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- diff --git a/installer/data/mysql/updatedatabase.pl b/installer/data/mysql/updatedatabase.pl index f32d43ca3d..68e7cbcf4f 100755 --- a/installer/data/mysql/updatedatabase.pl +++ b/installer/data/mysql/updatedatabase.pl @@ -2874,6 +2874,8 @@ if (C4::Context->preference("Version") < TransformToNum($DBversion)) { $DBversion = '3.01.00.077'; if (C4::Context->preference("Version") < TransformToNum($DBversion)) { + + $dbh->do("SET FOREIGN_KEY_CHECKS=0 "); $dbh->do("DROP TABLE IF EXISTS `aqbudgetperiods` "); $dbh->do(qq| CREATE TABLE `aqbudgetperiods` ( @@ -2890,7 +2892,7 @@ if (C4::Context->preference("Version") < TransformToNum($DBversion)) { $dbh->do(< AQBUDGETS IMPORT JUST YET, # BUT A NEW CLEAN AQBUDGETS TABLE CREATE FOR NOW.. @@ -2906,18 +2908,19 @@ ADDPERIODS #$dbh->do("drop table aqbudget;"); - $dbh->do(<selectcol_arrayref(<selectcol_arrayref(<do(<do(<do(<do("DROP TABLE aqbookfund "); - - # $dbh->do("ALTER TABLE aqorders ADD FOREIGN KEY (`budget_id`) REFERENCES `aqbudgets` (`budget_id`) ON UPDATE CASCADE " ); ???? + $dbh->do("SET FOREIGN_KEY_CHECKS=1 "); print "Upgrade to $DBversion done (Adding new aqbudgetperiods, aqbudgets and aqbudget_planning tables )\n"; SetVersion ($DBversion); @@ -3677,6 +3679,14 @@ if (C4::Context->preference('Version') < TransformToNum($DBversion)){ SetVersion ($DBversion); } +$DBversion = '3.01.00.143'; +if (C4::Context->preference('Version') < TransformToNum($DBversion)){ + $dbh->do(qq{CREATE INDEX auth_value_idx ON authorised_values (authorised_value)}); + $dbh->do(qq{CREATE INDEX auth_val_cat_idx ON borrower_attribute_types (authorised_value_category)}); + print "Create index on authorised_values and borrower_attribute_types (bug 4139)"; + SetVersion ($DBversion); +} + =item DropAllForeignKeys($table) diff --git a/koha-tmpl/opac-tmpl/prog/en/modules/opac-results.tmpl b/koha-tmpl/opac-tmpl/prog/en/modules/opac-results.tmpl index d5d87a2e22..3282600da2 100644 --- a/koha-tmpl/opac-tmpl/prog/en/modules/opac-results.tmpl +++ b/koha-tmpl/opac-tmpl/prog/en/modules/opac-results.tmpl @@ -6,7 +6,7 @@ You did not specify any search criteria. - Search RSS Feed" href="/cgi-bin/koha/opac-search.pl?&sort_by=&format=rss2" /> + Search RSS Feed" href="/cgi-bin/koha/opac-search.pl?&sort_by=&format=rss2" /> diff --git a/kohaversion.pl b/kohaversion.pl index d2cf8dbdf8..37605ebffc 100644 --- a/kohaversion.pl +++ b/kohaversion.pl @@ -11,7 +11,7 @@ use strict; sub kohaversion { - our $VERSION = '3.01.00.142'; + our $VERSION = '3.01.00.143'; # version needs to be set this way # so that it can be picked up by Makefile.PL diff --git a/members/memberentry.pl b/members/memberentry.pl index 5cb4d723ad..6ec6d8e2ae 100755 --- a/members/memberentry.pl +++ b/members/memberentry.pl @@ -246,6 +246,11 @@ if ($op eq 'save' || $op eq 'insert'){ $template->param('ERROR_age_limitations' => "$low to $high"); } } + + if(C4::Context->preference('uppercasesurnames')) { + $newdata{'surname'} = uc($newdata{'surname'}); + } + if (C4::Context->preference("IndependantBranches")) { if ($userenv && $userenv->{flags} % 2 != 1){ $debug and print STDERR " $newdata{'branchcode'} : ".$userenv->{flags}.":".$userenv->{branch}; @@ -273,7 +278,7 @@ if ($op eq 'save' || $op eq 'insert'){ } } -if ($op eq 'modify' || $op eq 'insert' || $op eq 'save' ){ +if ( ($op eq 'modify' || $op eq 'insert' || $op eq 'save') and ($step == 0 or $step == 3 )){ if (exists ($newdata{'dateexpiry'}) && !($newdata{'dateexpiry'})){ my $arg2 = $newdata{'dateenrolled'} || C4::Dates->today('iso'); $newdata{'dateexpiry'} = GetExpiryDate($newdata{'categorycode'},$arg2); diff --git a/opac/opac-ISBDdetail.pl b/opac/opac-ISBDdetail.pl index 9b5c031172..4883e89321 100755 --- a/opac/opac-ISBDdetail.pl +++ b/opac/opac-ISBDdetail.pl @@ -50,6 +50,7 @@ use C4::Output; use CGI; use MARC::Record; use C4::Biblio; +use C4::Items; use C4::Acquisition; use C4::Review; use C4::Serials; # uses getsubscriptionfrom biblionumber @@ -123,9 +124,19 @@ $template->param( subscriptionsnumber => $subscriptionsnumber, ); -# my @blocs = split /\@/,$ISBD; -# my @fields = $record->fields(); +my $norequests = 1; my $res = GetISBDView($biblionumber, "opac"); +my @items = &GetItemsInfo($biblionumber, 'opac'); + +my $itemtypes = GetItemTypes(); +for my $itm (@items) { + $norequests = 0 + if ( (not $itm->{'wthdrawn'} ) + && (not $itm->{'itemlost'} ) + && ($itm->{'itemnotforloan'}<0 || not $itm->{'itemnotforloan'} ) + && (not $itemtypes->{$itm->{'itype'}}->{notforloan} ) + && ($itm->{'itemnumber'} ) ); +} my $reviews = getreviews( $biblionumber, 1 ); foreach ( @$reviews ) { @@ -139,6 +150,9 @@ foreach ( @$reviews ) { $template->param( + RequestOnOpac => C4::Context->preference("RequestOnOpac"), + AllowOnShelfHolds => C4::Context->preference('AllowOnShelfHolds'), + norequests => $norequests, ISBD => $res, biblionumber => $biblionumber, reviews => $reviews, diff --git a/opac/opac-basket.pl b/opac/opac-basket.pl index 9562d2f077..c453c87d22 100755 --- a/opac/opac-basket.pl +++ b/opac/opac-basket.pl @@ -62,6 +62,7 @@ foreach my $biblionumber ( @bibs ) { my $dat = &GetBiblioData($biblionumber); my $record = &GetMarcBiblio($biblionumber); + next unless $record; my $marcnotesarray = GetMarcNotes( $record, $marcflavour ); my $marcauthorsarray = GetMarcAuthors( $record, $marcflavour ); my $marcsubjctsarray = GetMarcSubjects( $record, $marcflavour ); diff --git a/opac/opac-downloadcart.pl b/opac/opac-downloadcart.pl index 53d1b77fc9..ff1b58f49c 100755 --- a/opac/opac-downloadcart.pl +++ b/opac/opac-downloadcart.pl @@ -66,6 +66,7 @@ if ($bib_list && $format) { foreach my $biblio (@bibs) { my $record = GetMarcBiblio($biblio); + next unless $record; switch ($format) { case "iso2709" { $output .= $record->as_usmarc(); } diff --git a/opac/opac-downloadshelf.pl b/opac/opac-downloadshelf.pl index 5a3fb1fa1e..d73a8e72bd 100755 --- a/opac/opac-downloadshelf.pl +++ b/opac/opac-downloadshelf.pl @@ -70,6 +70,7 @@ if ($shelfid && $format) { my $biblionumber = $biblio->{biblionumber}; my $record = GetMarcBiblio($biblionumber); + next unless $record; switch ($format) { case "iso2709" { $output .= $record->as_usmarc(); }