Main Koha release repository https://koha-community.org
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

60 lines
1.5 KiB

  1. package Koha::Template::Plugin::Languages;
  2. # Copyright 2012 ByWater Solutions
  3. # Copyright 2013-2014 BibLibre
  4. #
  5. # Koha is free software; you can redistribute it and/or modify it
  6. # under the terms of the GNU General Public License as published by
  7. # the Free Software Foundation; either version 3 of the License, or
  8. # (at your option) any later version.
  9. #
  10. # Koha is distributed in the hope that it will be useful, but
  11. # WITHOUT ANY WARRANTY; without even the implied warranty of
  12. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  13. # GNU General Public License for more details.
  14. #
  15. # You should have received a copy of the GNU General Public License
  16. # along with Koha; if not, see <http://www.gnu.org/licenses>.
  17. use Modern::Perl;
  18. use Template::Plugin;
  19. use base qw( Template::Plugin );
  20. use C4::Koha;
  21. use C4::Languages;
  22. sub GetByISOCode {
  23. my ( $self, $lang, $code ) = @_;
  24. $lang = substr($lang,0,2); #Get db code from Koha lang value
  25. my $rfc = C4::Languages::get_rfc4646_from_iso639( $code );
  26. my $description = C4::Languages::language_get_description($rfc,$lang,'language');
  27. return $description;
  28. }
  29. 1;
  30. =head1 NAME
  31. Koha::Template::Plugin::Languages - TT Plugin for languages
  32. =head1 SYNOPSIS
  33. [% USE Languages %]
  34. [% Languages.GetByISOCode( 'LANG', 'ISO639CODE' ) %]
  35. =head1 ROUTINES
  36. =head2 GetByISOCode
  37. In a template, you can get the description for an language value with
  38. the following TT code: [% Languages.GetByISOCode( 'LANGUAGE', 'ISO639CODE' ) %]
  39. =head1 AUTHOR
  40. Nick Clemens <nick@bywatersolutions.com>
  41. =cut