Diff for /loncom/interface/lonparmset.pm between versions 1.16 and 1.17

version 1.16, 2000/11/28 02:53:40 version 1.17, 2000/11/28 11:23:15
Line 9 Line 9
 #  #
 # 10/11,10/12,10/16 Gerd Kortemeyer)  # 10/11,10/12,10/16 Gerd Kortemeyer)
 #  #
 # 11/20,11/21,11/22,11/23,11/24,11/25,11/27 Gerd Kortemeyer  # 11/20,11/21,11/22,11/23,11/24,11/25,11/27,11/28 Gerd Kortemeyer
   
 package Apache::lonparmset;  package Apache::lonparmset;
   
Line 31  my %symbp; Line 31  my %symbp;
 my %mapp;  my %mapp;
 my %typep;  my %typep;
 my %keyp;  my %keyp;
   my %defp;
   
 my %allkeys;  my %allkeys;
   
Line 123  sub parmval { Line 124  sub parmval {
     return $result;      return $result;
 }  }
   
 # ---------------------------------------------------------------- Sort routine  
   
 sub bycat {  
     if ($fcat eq '') {  
         $a<=>$b;  
     } else {  
         &parmval($fcat,$a)<=>&parmval($fcat,$b);  
     }  
 }  
   
 # ------------------------------------------------------------ Output for value  # ------------------------------------------------------------ Output for value
   
 sub valout {  sub valout {
Line 179  sub handler { Line 170  sub handler {
   
       $csec=$ENV{'form.csec'};        $csec=$ENV{'form.csec'};
       $udom=$ENV{'form.udom'};        $udom=$ENV{'form.udom'};
         unless ($udom) { $udom=$r->dir_config('lonDefDomain'); }
   
       my $id=$ENV{'form.id'};        my $id=$ENV{'form.id'};
       if (($id) && ($udom)) {        if (($id) && ($udom)) {
           $uname=(&Apache::lonnet::idget($udom,$id))[1];            $uname=(&Apache::lonnet::idget($udom,$id))[1];
Line 186  sub handler { Line 179  sub handler {
       $id='';        $id='';
           } else {            } else {
               $message=                $message=
      "<h3><font color=red>Unknown ID '$id' at domain '$udom'</font></h3>";       "<font color=red>Unknown ID '$id' at domain '$udom'</font>";
           }            }
       } else {        } else {
           $uname=$ENV{'form.uname'};            $uname=$ENV{'form.uname'};
Line 198  sub handler { Line 191  sub handler {
               
         if ($uhome eq 'no_host') {           if ($uhome eq 'no_host') { 
           $message=            $message=
      "<h3><font color=red>Unknown user '$uname' at domain '$udom'</font></h3>";       "<font color=red>Unknown user '$uname' at domain '$udom'</font>";
           $uname='';             $uname=''; 
         } else {          } else {
           $csec=&Apache::lonnet::usection(            $csec=&Apache::lonnet::usection(
        $udom,$uname,$ENV{'request.course.id'});         $udom,$uname,$ENV{'request.course.id'});
           if ($csec eq '-1') {            if ($csec eq '-1') {
              $message="<h3><font color=red>".               $message="<font color=red>".
               "User '$uname' at domain '$udom' not in this course</font></h3>";                "User '$uname' at domain '$udom' not in this course</font>";
               $uname='';                $uname='';
               $csec=$ENV{'form.csec'};                $csec=$ENV{'form.csec'};
  } else {   } else {
Line 232  sub handler { Line 225  sub handler {
   
 # --------------------------------------------------------- Get all assessments  # --------------------------------------------------------- Get all assessments
  %allkeys=();   %allkeys=();
           %defp=();
         map {          map {
     if ($_=~/^src\_(\d+)\.(\d+)$/) {      if ($_=~/^src\_(\d+)\.(\d+)$/) {
        my $mapid=$1;         my $mapid=$1;
Line 247  sub handler { Line 240  sub handler {
                        if ($_=~/^parameter\_(.*)/) {                         if ($_=~/^parameter\_(.*)/) {
   my $key=$_;    my $key=$_;
                           my $allkey=$1;                            my $allkey=$1;
                             $allkey=~s/\_/\./;
                           my $display=                            my $display=
       &Apache::lonnet::metadata($srcf,$key.'.display');        &Apache::lonnet::metadata($srcf,$key.'.display');
                           unless ($display) {                            unless ($display) {
Line 254  sub handler { Line 248  sub handler {
          &Apache::lonnet::metadata($srcf,$key.'.name');           &Apache::lonnet::metadata($srcf,$key.'.name');
                           }                            }
                           $allkeys{$allkey}=$display;                            $allkeys{$allkey}=$display;
                             if ($allkey eq $fcat) {
                                $defp{$id}=
                                 &Apache::lonnet::metadata($srcf,$key.'.default');
     }
                           if ($keyp{$id}) {                            if ($keyp{$id}) {
       $keyp{$id}.=','.$key;        $keyp{$id}.=','.$key;
                           } else {                            } else {
Line 325  sub handler { Line 323  sub handler {
            }             }
   
          if ($reply=~/^error\:(.*)/) {           if ($reply=~/^error\:(.*)/) {
      $message.="<h3><font color=red>Write Error: $1</font></h3>";       $message.="<font color=red>Write Error: $1</font>";
  }   }
 # ---------------------------------------------------------------- Done storing  # ---------------------------------------------------------------- Done storing
    }     }
Line 355  sub handler { Line 353  sub handler {
         }          }
   
 # ------------------------------------------------------------------- Sort this  # ------------------------------------------------------------------- Sort this
          @ids=sort bycat @ids;  
           @ids=sort  {  
              if ($fcat eq '') {
                 $a<=>$b;
              } else {
                 $outpar[&parmval($fcat,$a,$defp{$a})]<=>
                 $outpar[&parmval($fcat,$b,$defp{$b})];
              } 
           } @ids;
 # ------------------------------------------------------------------ Start page  # ------------------------------------------------------------------ Start page
          $r->content_type('text/html');           $r->content_type('text/html');
          $r->send_http_header;           $r->send_http_header;
Line 414  at Domain Line 420  at Domain
 <input type="hidden" value='' name="pres_type">  <input type="hidden" value='' name="pres_type">
 <input type="hidden" value='' name="pres_marker">  <input type="hidden" value='' name="pres_marker">
 ENDHEAD  ENDHEAD
   
         $r->print($message.'<p>Sort list by ');          $r->print('<h2>'.$message.'</h2><p>Sort list by ');
  $r->print('<select name="fcat" onChange="this.form.submit();">');   $r->print('<select name="fcat" onChange="this.form.submit();">');
         $r->print('<option value="">Enclosing Map</option>');          $r->print('<option value="">Enclosing Map</option>');
         map {          map {

Removed from v.1.16  
changed lines
  Added in v.1.17


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