package SL::Auth;
-use constant OK => 0;
-use constant ERR_PASSWORD => 1;
-use constant ERR_BACKEND => 100;
+use constant OK => 0;
+use constant ERR_PASSWORD => 1;
+use constant ERR_BACKEND => 100;
+
+use constant SESSION_OK => 0;
+use constant SESSION_NONE => 1;
+use constant SESSION_EXPIRED => 2;
use Digest::MD5 qw(md5_hex);
use IO::File;
$self->{SESSION} = { };
- return $main::lxdebug->leave_sub() if (!$session_id);
+ if (!$session_id) {
+ $main::lxdebug->leave_sub();
+ return SESSION_NONE;
+ }
my ($dbh, $query, $sth, $cookie, $ref, $form);
if (!$cookie || $cookie->{is_expired} || ($cookie->{ip_address} ne $ENV{REMOTE_ADDR})) {
$self->destroy_session();
$main::lxdebug->leave_sub();
- return;
+ return SESSION_EXPIRED;
}
$query = qq|SELECT sess_key, sess_value FROM auth.session_content WHERE session_id = ?|;
$sth->finish();
$main::lxdebug->leave_sub();
+
+ return SESSION_OK;
}
sub destroy_session {
["purchase_order_edit", $locale->text("Create and edit purchase orders")],
["purchase_delivery_order_edit", $locale->text("Create and edit purchase delivery orders")],
["vendor_invoice_edit", $locale->text("Create and edit vendor invoices")],
+ ["--warehouse_management", $locale->text("Warehouse management")],
+ ["warehouse_contents", $locale->text("View warehouse content")],
+ ["warehouse_management", $locale->text("Warehouse management")],
["--general_ledger_cash", $locale->text("General ledger and cash")],
["general_ledger", $locale->text("Transactions, AR transactions, AP transactions")],
["datev_export", $locale->text("DATEV Export")],