version 1.23, 2007/06/22 00:11:22
|
version 1.25.2.1, 2010/01/27 16:18:17
|
Line 110 sub handler {
|
Line 110 sub handler {
|
$rulehash{'domain'}=$env{'user.domain'}; |
$rulehash{'domain'}=$env{'user.domain'}; |
} |
} |
my $realm=''; |
my $realm=''; |
|
my $separator = ($rulehash{'type'} eq 'course') ? '_' : '/'; |
if ($number) { |
if ($number) { |
$realm=$rulehash{'domain'}; |
$realm=$rulehash{'domain'}; |
if ($rulehash{'course'}) { |
if ($rulehash{'course'}) { |
$realm.='_'.$rulehash{'course'}; |
$realm.=$separator.$rulehash{'course'}; |
} |
} |
if ($rulehash{'section'}) { |
if ($rulehash{'section'}) { |
$realm.='_'.$rulehash{'section'}; |
$realm.=$separator.$rulehash{'section'}; |
} |
} |
} |
} |
$newrules[$number]=$rulehash{'effect'}.':'. |
$newrules[$number]=$rulehash{'effect'}.':'. |
Line 126 sub handler {
|
Line 127 sub handler {
|
foreach my $key (keys(%env)) { |
foreach my $key (keys(%env)) { |
next if ($key!~/^form\.action\_(\d+)$/); |
next if ($key!~/^form\.action\_(\d+)$/); |
my $number=$1; |
my $number=$1; |
if ($env{$key} eq 'delete') { $newrules[$number]=''; } |
if ($env{$key} eq 'delete') { splice(@newrules,$number,1); } |
if (($env{$key} eq 'moveup') && ($number>1)) { |
if (($env{$key} eq 'moveup') && ($number>1)) { |
my $buffer=$newrules[$number]; |
@newrules[$number-1,$number] = @newrules[$number,$number-1]; |
$newrules[$number]=$newrules[$number-1]; |
|
$newrules[$number-1]=$buffer; |
|
} |
} |
if (($env{$key} eq 'movedown') && ($number<$#newrules)) { |
if (($env{$key} eq 'movedown') && ($number<$#newrules)) { |
my $buffer=$newrules[$number]; |
@newrules[$number+1,$number] = @newrules[$number,$number+1]; |
$newrules[$number]=$newrules[$number+1]; |
|
$newrules[$number+1]=$buffer; |
|
} |
} |
if ($env{$key} eq 'insertabove') { |
if ($env{$key} eq 'insertabove') { |
for (my $i=$#newrules;$i>=$number;$i--) { |
splice(@newrules,$number,0,'deny'); |
$newrules[$i+1]=$newrules[$i]; |
|
} |
|
$newrules[$number]='deny'; |
|
} |
} |
if ($env{$key} eq 'insertbelow') { |
if ($env{$key} eq 'insertbelow') { |
for (my $i=$#newrules;$i>$number;$i--) { |
splice(@newrules,$number+1,0,'deny'); |
$newrules[$i+1]=$newrules[$i]; |
|
} |
|
$newrules[$number+1]='deny'; |
|
} |
} |
} |
} |
|
|
Line 183 sub handler {
|
Line 174 sub handler {
|
my $token; |
my $token; |
my $rulecounter=0; |
my $rulecounter=0; |
my $colzero=&mt($constructmode?'Edit action':'Rule'); |
my $colzero=&mt($constructmode?'Edit action':'Rule'); |
my %lt=&Apache::lonlocal::texthash('ef' => 'Effect', |
my %lt=&Apache::lonlocal::texthash( |
|
'ef' => 'Effect', |
|
'ty' => 'Type', |
'do' => 'Domain', |
'do' => 'Domain', |
'co' => 'Course', |
'co' => 'Course / User', |
'se' => 'Section', |
'se' => 'Section', |
'ro' => 'Role'); |
'ro' => 'Role'); |
# ---------------------------------------------------------- Start table output |
# ---------------------------------------------------------- Start table output |
$r->print(&Apache::loncommon::start_data_table(). |
$r->print(&Apache::loncommon::start_data_table(). |
&Apache::loncommon::start_data_table_header_row(). |
&Apache::loncommon::start_data_table_header_row(). |
"<th>$colzero</th><th>$lt{'ef'}</th><th>Type</th><th>$lt{'do'}</th>". |
"<th>$colzero</th><th>$lt{'ef'}</th><th>$lt{'ty'}</th><th>$lt{'do'}</th>". |
"<th>$lt{'co'}</th><th>$lt{'se'}</th><th>$lt{'ro'}</th>". |
"<th>$lt{'co'}</th><th>$lt{'se'}</th><th>$lt{'ro'}</th>". |
&Apache::loncommon::end_data_table_header_row()); |
&Apache::loncommon::end_data_table_header_row()); |
# --------------------------------------------------------------------- Default |
# --------------------------------------------------------------------- Default |
Line 203 sub handler {
|
Line 196 sub handler {
|
if ($constructmode) { |
if ($constructmode) { |
$r->print(&Apache::loncommon::select_form('','action_0', |
$r->print(&Apache::loncommon::select_form('','action_0', |
('' => '', |
('' => '', |
'insertbelow' => 'Insert rule below '))); |
'insertbelow' => &mt('Insert rule below')))); |
|
|
} else { |
} else { |
$r->print(' '); |
$r->print(' '); |
Line 212 sub handler {
|
Line 205 sub handler {
|
if ($constructmode) { |
if ($constructmode) { |
$r->print(&Apache::loncommon::select_form |
$r->print(&Apache::loncommon::select_form |
($token->[2]->{'effect'},'effect_0', |
($token->[2]->{'effect'},'effect_0', |
|
&Apache::lonlocal::texthash |
('allow' => 'allow', |
('allow' => 'allow', |
'deny' => 'deny'))); |
'deny' => 'deny'))); |
} else { |
} else { |
Line 234 sub handler {
|
Line 228 sub handler {
|
if ($constructmode) { |
if ($constructmode) { |
$r->print(&Apache::loncommon::select_form( |
$r->print(&Apache::loncommon::select_form( |
'','action_'.$rulecounter, |
'','action_'.$rulecounter, |
|
&Apache::lonlocal::texthash |
('' => '', |
('' => '', |
'delete' => 'Delete this rule', |
'delete' => 'Delete this rule', |
'insertabove' => 'Insert rule above', |
'insertabove' => 'Insert rule above', |
'insertbelow' => 'Insert rule below ', |
'insertbelow' => 'Insert rule below', |
'moveup' => 'Move rule up', |
'moveup' => 'Move rule up', |
'movedown' => 'Move rule down'))); |
'movedown' => 'Move rule down'))); |
} |
} |
Line 248 sub handler {
|
Line 243 sub handler {
|
$r->print(&Apache::loncommon::select_form |
$r->print(&Apache::loncommon::select_form |
($token->[2]->{'effect'}, |
($token->[2]->{'effect'}, |
'effect_'.$rulecounter, |
'effect_'.$rulecounter, |
|
&Apache::lonlocal::texthash |
('allow' => 'allow', |
('allow' => 'allow', |
'deny' => 'deny'))); |
'deny' => 'deny'))); |
} else { |
} else { |
Line 260 sub handler {
|
Line 256 sub handler {
|
if ($constructmode) { |
if ($constructmode) { |
$r->print(&Apache::loncommon::select_form($type, |
$r->print(&Apache::loncommon::select_form($type, |
'type_'.$rulecounter, |
'type_'.$rulecounter, |
|
&Apache::lonlocal::texthash |
('course' => 'Course', |
('course' => 'Course', |
'user' => 'User'))); |
'user' => 'User'))); |
} else { |
} else { |
Line 268 sub handler {
|
Line 265 sub handler {
|
|
|
# ---- realm |
# ---- realm |
my $realm=$token->[2]->{'realm'}; |
my $realm=$token->[2]->{'realm'}; |
my ($rdom,$rcourse,$rsec)=split(/[\/\_]/,$realm); |
my ($rdom,$rcourse,$rsec); |
$rdom = &LONCAPA::clean_domain($rdom); |
|
if ($type eq 'course') { |
if ($type eq 'course') { |
|
($rdom,$rcourse,$rsec) = split(m{[/_]},$realm,3); |
$rcourse = &LONCAPA::clean_courseid($rcourse); |
$rcourse = &LONCAPA::clean_courseid($rcourse); |
} else { |
} else { |
|
($rdom,$rcourse,$rsec) = split(m{/},$realm,3); |
$rcourse = &LONCAPA::clean_username($rcourse); |
$rcourse = &LONCAPA::clean_username($rcourse); |
} |
} |
|
|
|
|
$r->print('</td><td>'); |
$r->print('</td><td>'); |
# realm domain |
# realm domain |
if ($constructmode) { |
if ($constructmode) { |