Diff for /loncom/publisher/lonrights.pm between versions 1.23 and 1.26

version 1.23, 2007/06/22 00:11:22 version 1.26, 2009/05/26 11:21:47
Line 55  sub handler { Line 55  sub handler {
   &Apache::loncommon::content_type($r,'text/html');    &Apache::loncommon::content_type($r,'text/html');
   $r->send_http_header;    $r->send_http_header;
   
     # Breadcrumbs
     &Apache::lonhtmlcommon::clear_breadcrumbs();
     &Apache::lonhtmlcommon::add_breadcrumb({
         'text'  => 'Construction Space',
         'href'  => '', # FIXME Add link to /priv/[user]
         });
     &Apache::lonhtmlcommon::add_breadcrumb({
         'text'  => 'Custom Rights Editor',
         'title' => 'Custom Distribution Rights Editor',
         'href'  => '',});
   
   my $js = &Apache::loncommon::coursebrowser_javascript().    my $js = &Apache::loncommon::coursebrowser_javascript().
       &Apache::loncommon::studentbrowser_javascript();        &Apache::loncommon::studentbrowser_javascript();
   $r->print(&Apache::loncommon::start_page('Custom Distribution Rights',$js));    $r->print(&Apache::loncommon::start_page('Custom Distribution Rights',$js)
              .&Apache::lonhtmlcommon::breadcrumbs()
              .&Apache::loncommon::head_subbox(
                   &Apache::loncommon::CSTR_pageheader())
     );
   $r->rflush();    $r->rflush();
   
   my $uri=$r->uri;    my $uri=$r->uri;
Line 110  sub handler { Line 125  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 142  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 189  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 211  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' => 'Insert rule below')));
                                                                                                   
   } else {    } else {
       $r->print('&nbsp;');        $r->print('&nbsp;');
Line 237  sub handler { Line 245  sub handler {
                     ('' => '',                       ('' => '', 
                      '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 268  sub handler { Line 276  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) {

Removed from v.1.23  
changed lines
  Added in v.1.26


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>