X-Git-Url: http://koha-dev.rot13.org:8081/gitweb/?a=blobdiff_plain;ds=sidebyside;f=C4%2FClassSortRoutine%2FLCC.pm;h=f5f4a1c85c24fcdf92a29e213b96a1aef3543774;hb=4bbda034644723750a11c5693953390cc229a0a7;hp=a4e34b29d307b1c7a5161d8e6385137e6a6264b4;hpb=1455d663d64c78a742a344f449bcc9a789a33603;p=koha_fer diff --git a/C4/ClassSortRoutine/LCC.pm b/C4/ClassSortRoutine/LCC.pm index a4e34b29d3..f5f4a1c85c 100644 --- a/C4/ClassSortRoutine/LCC.pm +++ b/C4/ClassSortRoutine/LCC.pm @@ -1,6 +1,7 @@ package C4::ClassSortRoutine::LCC; # Copyright (C) 2007 LibLime +# Copyright (C) 2012 Equinox Software, Inc. # # This file is part of Koha. # @@ -13,17 +14,18 @@ package C4::ClassSortRoutine::LCC; # 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; +use Library::CallNumber::LC; use vars qw($VERSION); # set the version for version checking -$VERSION = 3.00; +$VERSION = 3.07.00.049; =head1 NAME @@ -50,19 +52,10 @@ sub get_class_sort_key { $cn_class = '' unless defined $cn_class; $cn_item = '' unless defined $cn_item; - my $key = uc "$cn_class $cn_item"; - $key =~ s/^\s+//; - $key =~ s/\s+$//; - $key =~ s/^[^\p{IsAlnum}\s.]//g; - $key =~ s/^([A-Z]+)/$1 /; - $key =~ s/(\.[A-Z])/ $1/g; - # handle first digit group - $key =~ s/(\d+)/sprintf("%-05.5d", $1)/xe; - $key =~ s/\s+/_/g; - $key =~ s/\./_/g; - $key =~ s/__/_/g; - $key =~ s/[^\p{IsAlnum}_]//g; - + my $call_number = Library::CallNumber::LC->new(uc "$cn_class $cn_item"); + return '' unless defined $call_number; + my $key = $call_number->normalize(); + $key = '' unless defined $key; return $key; } @@ -71,7 +64,7 @@ sub get_class_sort_key { =head1 AUTHOR -Koha Developement team +Koha Development Team =cut