epic-ts
[kivitendo-erp.git] / SL / DB / Default.pm
1 package SL::DB::Default;
2
3 use strict;
4
5 use Carp;
6 use SL::DB::MetaSetup::Default;
7
8 __PACKAGE__->meta->initialize;
9
10 # Creates get_all, get_all_count, get_all_iterator, delete_all and update_all.
11 __PACKAGE__->meta->make_manager_class;
12
13 sub get_default_currency {
14   my $self = shift->get;
15   return $self->currency->name || '' if $self->currency_id;
16   return '';
17 }
18
19 sub get {
20   my ($class_or_self) = @_;
21   return $class_or_self if ref($class_or_self);
22   return SL::DB::Manager::Default->get_all(limit => 1)->[0];
23 }
24
25 sub address {
26   # Compatibility function: back in the day there was only a single
27   # address field.
28   my $self = shift;
29
30   croak("SL::DB::Default::address is a read-only accessor") if @_;
31
32   my $zipcode_city = join ' ', grep { $_ } ($self->address_zipcode, $self->address_city);
33
34   return join "\n", grep { $_ } ($self->address_street1, $self->address_street2, $zipcode_city, $self->address_country);
35 }
36
37 1;