X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=SL%2FDB%2FHelper%2FAttr.pm;h=8c99903d3686f5daddd9776017db93575838da23;hb=8891065f8ab27011e1d519480e5e91b2afefa407;hp=94b53dd7f9f15b25285a16317043c94ecf346f40;hpb=300f3739cfe93d10a867a778a1430068c00c32a8;p=kivitendo-erp.git diff --git a/SL/DB/Helper/Attr.pm b/SL/DB/Helper/Attr.pm index 94b53dd7f..8c99903d3 100644 --- a/SL/DB/Helper/Attr.pm +++ b/SL/DB/Helper/Attr.pm @@ -33,6 +33,7 @@ sub _make_by_type { _as_percent($package, $name, places => 2) if $type =~ /numeric | real | float/xi; _as_number ($package, $name, places => 0) if $type =~ /int/xi; _as_date ($package, $name) if $type =~ /date | timestamp/xi; + _as_bool_yn($package, $name) if $type =~ /bool/xi; } sub _as_number { @@ -104,6 +105,23 @@ sub _as_date { return 1; } +sub _as_bool_yn { + my ($package, $attribute, %params) = @_; + + no strict 'refs'; + *{ $package . '::' . $attribute . '_as_bool_yn' } = sub { + my ($self) = @_; + + if (@_ > 1) { + die 'not an accessor'; + } + + return !defined $self->$attribute ? '' + : $self->$attribute ? $::locale->text('Yes') + : $::locale->text('No'); + } +} + 1; @@ -111,6 +129,8 @@ sub _as_date { __END__ +=encoding utf-8 + =head1 NAME SL::DB::Helper::Attr - attribute helpers @@ -126,10 +146,18 @@ SL::DB::Helper::Attr - attribute helpers =head1 DESCRIPTION +Makes attribute helpers. + =head1 FUNCTIONS +see for yourself. + =head1 BUGS +None yet. + =head1 AUTHOR +Sven Schöling + =cut