[system] / trunk / webwork-modperl / lib / WeBWorK / Authz.pm Repository:
ViewVC logotype

Annotation of /trunk/webwork-modperl/lib/WeBWorK/Authz.pm

Parent Directory Parent Directory | Revision Log Revision Log


Revision 924 - (view) (download) (as text)

1 : sh002i 455 ################################################################################
2 : sh002i 494 # WeBWorK mod_perl (c) 2000-2002 WeBWorK Project
3 : sh002i 455 # $Id$
4 :     ################################################################################
5 :    
6 : malsyned 390 package WeBWorK::Authz;
7 :    
8 : sh002i 455 =head1 NAME
9 :    
10 :     WeBWorK::Authz - check user permissions.
11 :    
12 :     =cut
13 :    
14 : malsyned 441 use strict;
15 :     use warnings;
16 : malsyned 390
17 : malsyned 924 # WeBWorK::Authz->new($r, $ce, $db)
18 : sh002i 817 sub new($$$$) {
19 : malsyned 390 my $invocant = shift;
20 :     my $class = ref($invocant) || $invocant;
21 :     my $self = {};
22 : sh002i 817 ($self->{r}, $self->{ce}, $self->{db}) = @_;
23 : malsyned 390 bless $self, $class;
24 :     return $self;
25 :     }
26 :    
27 : malsyned 676 # This currently only uses two of it's arguments, but it accepts any number, in
28 :     # case in the future calculating certain permissions requires more information.
29 : malsyned 390 sub hasPermissions {
30 :     my ($self, $user, $activity) = @_;
31 :     my $r = $self->{r};
32 : sh002i 809 my $courseEnvironment = $self->{ce};
33 : sh002i 682 my $permissionLevels = $courseEnvironment->{permissionLevels};
34 : malsyned 390
35 : sh002i 817 my $permissionLevel = $self->{db}->getPermissionLevel($user)->permission();
36 : sh002i 682 if (defined $permissionLevels->{$activity}
37 :     and $permissionLevel >= $permissionLevels->{$activity}) {
38 : malsyned 390 return 1;
39 : sh002i 817 } else {
40 :     return 0;
41 :     }
42 : malsyned 390 }
43 :    
44 :     1;

aubreyja at gmail dot com
ViewVC Help
Powered by ViewVC 1.0.9