]> wagnertech.de Git - mfinanz.git/blobdiff - SL/DB/CustomVariable.pm
Validity-Accessor für CVars
[mfinanz.git] / SL / DB / CustomVariable.pm
index 6410e3f254522fe9f6ae1fee65e2bdd1a6463e1c..83ee89db7a8c938504fd48fa2e040f2ab3d14cab 100644 (file)
@@ -6,8 +6,27 @@ package SL::DB::CustomVariable;
 use strict;
 
 use SL::DB::MetaSetup::CustomVariable;
+use SL::DB::CustomVariableValidity;
+
+__PACKAGE__->meta->initialize;
 
 # Creates get_all, get_all_count, get_all_iterator, delete_all and update_all.
 __PACKAGE__->meta->make_manager_class;
 
+sub value {
+  my $self = $_[0];
+  my $type = $self->config->type;
+
+  goto &bool_value      if $type eq 'boolean';
+  goto &timestamp_value if $type eq 'timestamp';
+  goto &number_value    if $type eq 'number';
+  goto &text_value; # text and select
+}
+
+sub is_valid {
+  my ($self) = @_;
+
+  return SL::DB::Manager::CustomVariableValidity->get_all_count(config_id => $self->config_id, trans_id => $self->trans_id) == 0;
+}
+
 1;