- return map { $class->new($_) } @{$dbh->selectall_arrayref(
- # The itemtypes table is small enough for
- # `SELECT *` to be harmless.
- "SELECT * FROM itemtypes ORDER BY description",
- { Slice => {} },
- )};
+
+ my @itypes;
+ for ( @{$dbh->selectall_arrayref(
+ "SELECT * FROM itemtypes ORDER BY description", { Slice => {} })} )
+ {
+ utf8::encode($_->{description});
+ push @itypes, $class->new($_);
+ }
+ return @itypes;
+}
+
+
+
+
+=head3 C4::ItemType->get
+
+Return the itemtype indicated by the itemtype given as argument, as
+an object.
+
+=cut
+
+sub get {
+ my ($class, $itemtype) = @_;
+ my $dbh = C4::Context->dbh;
+
+ my $data = $dbh->selectrow_hashref(
+ "SELECT * FROM itemtypes WHERE itemtype = ?", undef, $itemtype
+ );
+ if ( $data->{description} ) {
+ utf8::encode($data->{description});
+ }
+ return $class->new($data);