package RH::Laptops;

use strict;
use warnings;

use File::Spec;
use Jifty::DBI::Handle;
use YAML qw/LoadFile/;

use vars qw/$HANDLE/;

sub handle {
  return $HANDLE if defined $HANDLE;
  _init_handle();
  return $HANDLE;
}

sub _init_handle {
  my $config = LoadFile($RH::Laptops::CONFIG_FILE);
  my $db;

  if ($config->{dbname} =~ m!^/!) {
    # it looks like an absolute path
    $db = $config->{dbname};
  } else {
    $db = File::Spec->catfile($FindBin::Bin, '..',
                              $config->{dbname});
  }
  
  $HANDLE = Jifty::DBI::Handle->new;
  $HANDLE->connect(driver => 'SQLite',
                   database => $db);
}

1;
