initialize in SL::DB::Objects statt im MetaSetup
[kivitendo-erp.git] / SL / InstanceConfiguration.pm
index 1e9c6a1..d0b6b3a 100644 (file)
@@ -15,9 +15,9 @@ sub init {
 
   $self->{data} = selectfirst_hashref_query($::form, $::form->get_standard_dbh, qq|SELECT * FROM defaults|);
 
-  my $curr            =  $self->{data}->{curr} || '';
-  $curr               =~ s/\s+//g;
-  $self->{currencies} =  [ split m/:/, $curr ];
+  #To get all currencies and the default currency:
+  ($self->{data}->{curr}) = selectrow_query($::form, $::form->get_standard_dbh, qq|SELECT name AS curr FROM currencies WHERE id = (SELECT currency_id FROM defaults)|);
+  $self->{currencies}     = [ map { $_->{name} } selectall_hashref_query($::form, $::form->get_standard_dbh, qq|SELECT name FROM currencies ORDER BY id|) ];
 
   return $self;
 }
@@ -25,13 +25,13 @@ sub init {
 sub get_default_currency {
   my ($self) = @_;
 
-  return ($self->get_currencies)[0];
+  return $self->{data}->{curr};
 }
 
 sub get_currencies {
   my ($self) = @_;
 
-  return $self->{currencies} ? @{ $self->{currencies} } : ();
+  return @{ $self->{currencies} };
 }
 
 sub get_accounting_method {
@@ -144,6 +144,48 @@ sub get_purchase_delivery_order_show_delete {
   return $self->{data}->{purchase_delivery_order_show_delete};
 }
 
+sub get_default_warehouse_id {
+  my ($self) = @_;
+  return ($self->{data}->{warehouse_id});
+}
+
+sub get_default_bin_id {
+  my ($self) = @_;
+  return ($self->{data}->{bin_id});
+}
+sub get_default_warehouse_id_ignore_onhand {
+  my ($self) = @_;
+  return ($self->{data}->{warehouse_id_ignore_onhand});
+}
+
+sub get_default_bin_id_ignore_onhand {
+  my ($self) = @_;
+  return ($self->{data}->{bin_id_ignore_onhand});
+}
+
+
+sub get_transfer_default {
+  my ($self) = @_;
+  return ($self->{data}->{transfer_default});
+}
+
+sub get_transfer_default_use_master_default_bin {
+  my ($self) = @_;
+  return ($self->{data}->{transfer_default_use_master_default_bin});
+}
+
+sub get_transfer_default_ignore_onhand {
+  my ($self) = @_;
+  return ($self->{data}->{transfer_default_ignore_onhand});
+}
+# currently unused - value is set via audit_control (Bücherkontrolle)
+sub get_max_future_booking_interval {
+  my ($self) = @_;
+  return ($self->{data}->{max_future_booking_interval});
+}
+
+
+
 1;
 
 __END__
@@ -256,6 +298,38 @@ corresponding record type (true or false).
 Returns the default behavior for showing the delete button for the
 corresponding record type (true or false).
 
+=item C<get_default_warehouse_id>
+
+Returns the default warehouse_id
+
+=item C<get_default_bin_id>
+
+Returns the default bin_id
+
+=item C<get_default_warehouse_id_ignore_onhand>
+
+Returns the default warehouse_id for transfers without checking the
+current stock quantity
+
+=item C<get_default_bin_id_ignore_onhand>
+
+Returns the default bin_id for transfers without checking the.
+current stock quantity
+
+
+
+=item C<get_transfer_default>
+
+=item C<get_transfer_default_use_master_default_bin>
+
+=item C<get_transfer_default_ignore_onhand>
+
+Returns the default behavior for the transfer out default feature (true or false)
+
+=item C<get_max_future_booking_interval>
+
+Returns the maximum interval value for future bookings
+
 =back
 
 =head1 BUGS