summaryrefslogtreecommitdiff
path: root/LedgerSMB/Entity.pm
diff options
context:
space:
mode:
authoraurynn_cmd <aurynn_cmd@4979c152-3d1c-0410-bac9-87ea11338e46>2007-11-15 23:10:31 +0000
committeraurynn_cmd <aurynn_cmd@4979c152-3d1c-0410-bac9-87ea11338e46>2007-11-15 23:10:31 +0000
commitd340ccd5ecbb731c273a07876ad0dfc0a9b33379 (patch)
tree15acb5cc66a14c787ef49a6bab8910cdca0f82c9 /LedgerSMB/Entity.pm
parentc366b783a65dfdd7dadb105962ae0807cddaa6b9 (diff)
Significant work on the Entity and Administrative code. It's buggy, so please test, etc. thoroughly.
git-svn-id: https://ledger-smb.svn.sourceforge.net/svnroot/ledger-smb/trunk@1869 4979c152-3d1c-0410-bac9-87ea11338e46
Diffstat (limited to 'LedgerSMB/Entity.pm')
-rw-r--r--LedgerSMB/Entity.pm43
1 files changed, 43 insertions, 0 deletions
diff --git a/LedgerSMB/Entity.pm b/LedgerSMB/Entity.pm
new file mode 100644
index 00000000..4c01b804
--- /dev/null
+++ b/LedgerSMB/Entity.pm
@@ -0,0 +1,43 @@
+package LedgerSMB::Entity;
+
+use base qw/LedgerSMB::DBObject/;
+
+sub save {
+
+ my $self = shift @_;
+
+ my $id = @{ $self->exec_method(procname=>'entity_save',
+ args=>[
+ $self->{name},
+ $self->{entity_class},
+ ]
+ )};
+
+ $self->{id} = shift @{ $id };
+ return $self->{id};
+}
+
+sub get {
+
+ my $self = shift @_;
+
+ my $hashref = $self->exec_method(procname=>'entity_get', args=>[$self->{id}]);
+ $self->merge($hashref);
+ return $self->{id};
+
+}
+
+sub search {
+
+ # Shouldn't really be necessary..
+
+ # anyway, Search on name.
+ my $self = shift @_;
+
+ my @list = @{ $self->exec_method( procname=>'entity_search',
+ args=>[
+ $self->{name}
+ ]
+ ) };
+}
+1; \ No newline at end of file