it was hard to find a bug in our module because userenv does not report what
was going on. I rewrote it to be more verbose in error cases.
---
 C4/Context.pm |   30 +++++++++++++-----------------
 1 files changed, 13 insertions(+), 17 deletions(-)

diff --git a/C4/Context.pm b/C4/Context.pm
index 7813f49..c069121 100644
--- a/C4/Context.pm
+++ b/C4/Context.pm
@@ -867,25 +867,21 @@ set_userenv is called in Auth.pm
 
 =cut
 
-#'
 sub userenv
 {
-    my $var = $context->{"activeuser"};
-    return $context->{"userenv"}->{$var} if (defined 
$context->{"userenv"}->{$var});
-    # insecure=1 management
-    if ($context->{"dbh"} && $context->preference('insecure')) {
-        my %insecure;
-        $insecure{flags} = '16382';
-        $insecure{branchname} ='Insecure';
-        $insecure{number} ='0';
-        $insecure{cardnumber} ='0';
-        $insecure{id} = 'insecure';
-        $insecure{branch} = 'INS';
-        $insecure{emailaddress} = '[EMAIL PROTECTED]';
-        return \%insecure;
-    } else {
-        return 0;
-    }
+    my $var = $context->{"activeuser"} or die "no active user. Perhaps you 
forgot to load C4::Auth and use get_template_and_user";
+    if ( my $env =  $context->{"userenv"}->{$var} ) { return $env };
+    die "no loaded context" unless C4::Context->dbh;
+    $context->preference('insecure') and return {qw(
+       flags 16382
+       branchname Insecure
+       number 0
+       cardnumber 0
+       id Insecure
+       branch INS
+       emailaddress [EMAIL PROTECTED]
+    )};
+    die "no userenv without insecure mode";
 }
 
 =item set_userenv
-- 
1.5.4.3

_______________________________________________
Koha-patches mailing list
[email protected]
http://lists.koha.org/mailman/listinfo/koha-patches

Reply via email to