Add some tests... or so
[dbsrgits/DBIx-Class-Journal.git] / lib / DBIx / Class / Journal.pm
1 package DBIx::Class::Journal;
2
3 use base qw/DBIx::Class/;
4
5 ## On create/insert, add new entry to AuditLog
6
7 sub new
8 {
9     my ($class, $attrs, @rest) = @_;
10
11     $class->result_source->schema->_journal_schema->current_user(delete $attrs->{user_id});
12
13     $class->next::method($attrs, @rest);
14 }
15
16 sub insert
17 {
18     my ($self) = @_;
19
20     ## create new transaction here?
21     $self->next::method();
22     if($self->in_storage)
23     {
24         my $s_name = $self->result_source_instance->name();
25         my $al = $self->result_source->schema->_journal_schema->resultset("${s_name}AuditLog");
26         $al->create({
27             changeset => $self->result_source->schema->_journal_schema->current_changeset(),
28         });
29     }
30 }
31
32 ## On delete, update delete_id of AuditLog
33
34 ## On update, copy previous row's contents to AuditHistory
35
36
37
38 1;