Diff for /loncom/interface/lonparmset.pm between versions 1.219 and 1.221

version 1.219, 2005/06/09 20:35:48 version 1.221, 2005/06/14 02:33:18
Line 70  my $parmhashid; Line 70  my $parmhashid;
 my %parmhash;  my %parmhash;
 my $symbsid;  my $symbsid;
 my %symbs;  my %symbs;
   my $rulesid;
   my %rules;
   
 # --- end local caches  # --- end local caches
   
Line 240  sub symbcache { Line 242  sub symbcache {
     return $symbs{$id};      return $symbs{$id};
 }  }
   
   sub resetrulescache {
       $rulesid='';
   }
   
   sub rulescache {
       my $id=shift;
       if ($rulesid ne $env{'request.course.id'}) {
    %rules=();
       }
       unless ($rules{$id}) {
    my $dom = $env{'course.'.$env{'request.course.id'}.'.domain'};
    my $crs = $env{'course.'.$env{'request.course.id'}.'.num'};
    my %rules=&Apache::lonnet::dump('parmdefactions',$dom,$crs);
    $rulesid=$env{'request.course.id'};
       }
       return $rules{$id};
   }
   
 ##################################################  ##################################################
 ##################################################  ##################################################
 #  #
Line 2505  ENDMAINFORMHEAD Line 2525  ENDMAINFORMHEAD
             permission => $parm_permission,              permission => $parm_permission,
             help => 'Cascading_Parameters',              help => 'Cascading_Parameters',
             },              },
 #          { text => 'Set Parameter Default Preferences',            { text => 'Set Parameter Setting Default Actions',
 #            help => 'Course_View_Class_List',              action => 'setdefaults',
 #            action => 'setdefaults',              permission => $parm_permission,
 #            permission => $parm_permission,              },
 #            },  
           );            );
     my $menu_html = '';      my $menu_html = '';
     foreach my $menu_item (@menu) {      foreach my $menu_item (@menu) {
Line 2534  ENDMAINFORMHEAD Line 2553  ENDMAINFORMHEAD
 }  }
   
   
   ##################################################
   
   sub defaultsetter {
       my $r=shift;
       my $bodytag=&Apache::loncommon::bodytag('Parameter Setting Default Actions');
       my $dom = $env{'course.'.$env{'request.course.id'}.'.domain'};
       my $crs = $env{'course.'.$env{'request.course.id'}.'.num'};
       my $breadcrumbs = &Apache::lonhtmlcommon::breadcrumbs(undef,'Defaults');
       my $html=&Apache::lonxml::xmlbegin();
       $r->print(<<ENDDEFHEAD);
   $html
   <head>
   <title>LON-CAPA Parameters</title>
   </head>
   $bodytag
   $breadcrumbs
   <form method="post" action="/adm/parmset?action=setdefaults" name="defaultform">
   ENDDEFHEAD
       if ($env{'form.storerules'}) {
    &resetrulescache();
       }
       my @ids=();
       my %typep=();
       my %keyp=();
       my %allparms=();
       my %allparts=();
       my %allmaps=();
       my %mapp=();
       my %symbp=();
       my %maptitles=();
       my %uris=();
       my %keyorder=&standardkeyorder();
       my %defkeytype=();
   
       &extractResourceInformation(\@ids, \%typep,\%keyp, \%allparms, \%allparts, \%allmaps, 
    \%mapp, \%symbp,\%maptitles,\%uris,
    \%keyorder,\%defkeytype);
       my %lt=&Apache::lonlocal::texthash('hours' => 'Hours',
          'min' => 'Minutes',
          'sec' => 'Seconds',
          'yes' => 'Yes',
          'no' => 'No');
       $r->print("\n<table border='1'><tr><th>".&mt('Rule for parameter').'</th><th>'.
         &mt('Automatically set to ...').'</th><th>'.&mt('if ...').'</th></tr>');
       foreach my $tempkey (&keysindisplayorder(\%allparms,\%keyorder)) {
    $r->print("\n<tr><td>".$allparms{$tempkey}."\n<br />(".$tempkey.')</td><td>');
           if (&isdateparm($defkeytype{$tempkey})) {
       $r->print(<<ENDINPUTDATE);
   <input name="$tempkey\_hours" type="text" size="4" />$lt{'hours'}<br />
   <input name="$tempkey\_min" type="text" size="4" />$lt{'min'}<br />
   <input name="$tempkey\_sec" type="text" size="4" />$lt{'sec'}
   ENDINPUTDATE
    } elsif ($defkeytype{$tempkey} eq 'string_yesno') {
       $r->print(<<ENDYESNO);
   <label><input type="radio" name="$tempkey" value="yes" /> $lt{'yes'}</label><br />
   <label><input type="radio" name="$tempkey" value="no" /> $lt{'no'}</label>
   ENDYESNO
           } else {
       $r->print('<input type="text" size="20" name="'.$tempkey.'" />');
    }
           $r->print('</td></tr>');
   
       }
       $r->print("</table></form></body></html>");
       return;
   }
   
 ##################################################  ##################################################
 ##################################################  ##################################################
Line 2548  Main handler.  Calls &assessparms and &c Line 2632  Main handler.  Calls &assessparms and &c
 =cut  =cut
 ##################################################  ##################################################
 ##################################################  ##################################################
     use Data::Dumper;  #    use Data::Dumper;
   
 sub handler {  sub handler {
     my $r=shift;      my $r=shift;
   
Line 2615  sub handler { Line 2700  sub handler {
             &Apache::lonhtmlcommon::add_breadcrumb({href=>'/adm/parmset?action=setoverview',              &Apache::lonhtmlcommon::add_breadcrumb({href=>'/adm/parmset?action=setoverview',
     text=>"Overview Mode"});      text=>"Overview Mode"});
     &newoverview($r);      &newoverview($r);
         } elsif ($env{'form.action'} eq 'settable' && $parm_permission) {          }  elsif ($env{'form.action'} eq 'setdefaults' && $parm_permission) {
               &Apache::lonhtmlcommon::add_breadcrumb({href=>'/adm/parmset?action=setdefaults',
       text=>"Set Defaults"});
       &defaultsetter($r);
    } elsif ($env{'form.action'} eq 'settable' && $parm_permission) {
             &Apache::lonhtmlcommon::add_breadcrumb({href=>'/adm/parmset?action=settable',              &Apache::lonhtmlcommon::add_breadcrumb({href=>'/adm/parmset?action=settable',
     text=>"Table Mode",      text=>"Table Mode",
     help => 'Course_Setting_Parameters'});      help => 'Course_Setting_Parameters'});

Removed from v.1.219  
changed lines
  Added in v.1.221


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