package Opals::Log;

#require Exporter;
#@ISA       = qw(Exporter);

# Version number
$VERSION   = 0.01;      

#use utf8;
use strict;
use Encode;
use LWP::UserAgent;
use HTTP::Request::Common;
use Time::localtime;



sub new {

    my $class = shift;
    my (%param) = (@_);
    my $dbh = $param{'dbh'};
    return unless $dbh;
    my $this = {
        dbh => $dbh,
    };
    bless $this, $class;
    return $this;
}


################################################################################
# Params : sessionId, uid,module,action, content
#

sub log {
    my $this = shift;
    my $dbh = $this->{'dbh'};
    my ($params) = @_;
    my $browser = $ENV{'HTTP_USER_AGENT'};
    my $sql = <<_SQL_;
insert into log (module,uid,sessionId,action,scriptName,browser,content) 
value (?,?,?,?,?,?,?)
_SQL_

    my $sth = $dbh->prepare($sql);
    $sth->execute(  $params->{'module'}, 
                    $params->{'uid'}, 
                    $params->{'sessionid'}, 
                    $params->{'action'},
                    $ENV{'SCRIPT_URL'},
                    $browser,
                    $params->{'content'}
                );
    my $id = $dbh->{'mysql_insertid'};

    $sth->finish;
    return $id;
}

1;

################################################################################



