Diff for /loncom/interface/lonquickgrades.pm between versions 1.67 and 1.69

version 1.67, 2011/02/20 20:57:46 version 1.69, 2011/02/20 22:48:26
Line 374  sub outputTable { Line 374  sub outputTable {
     # If there were any problems at the top level, print an extra "catchall"      # If there were any problems at the top level, print an extra "catchall"
     if ($topLevelParts > 0) {      if ($topLevelParts > 0) {
         my $ratio = $topLevelRight / $topLevelParts;          my $ratio = $topLevelRight / $topLevelParts;
         my $color = mixColors(\@start, \@end, $ratio);          my $color = &mixColors(\@start, \@end, $ratio);
         $r->print(&Apache::loncommon::start_data_table_row()          $r->print(&Apache::loncommon::start_data_table_row()
                  .'<td style="background-color:'.$color.';">');                   .'<td style="background-color:'.$color.';">');
         $r->print(&mt("Problems Not Contained In A Folder")."</td><td>");          $r->print(&mt("Problems Not Contained In A Folder")."</td><td>");
Line 386  sub outputTable { Line 386  sub outputTable {
 # show totals (if applicable), close table  # show totals (if applicable), close table
 #  #
     if ($showPoints) {      if ($showPoints) {
         my $maxHelpLink = Apache::loncommon::help_open_topic("Quick_Grades_Possibly_Correct");          my $maxHelpLink = &Apache::loncommon::help_open_topic("Quick_Grades_Possibly_Correct");
   
         $title = $showPoints ? "Points" : "Parts Done";          $title = $showPoints ? "Points" : "Parts Done";
         my $totaltitle = $showPoints ? &mt("Awarded Total Points") : &mt("Total Parts Done");          my $totaltitle = $showPoints ? &mt("Awarded Total Points") : &mt("Total Parts Done");
Line 429  sub outputCategories { Line 429  sub outputCategories {
 # Process the changes  # Process the changes
         %categories=&process_category_edits($r,$cangrade,%categories);          %categories=&process_category_edits($r,$cangrade,%categories);
 # Actually store  # Actually store
 #        &Apache::lonnet::logthis("Storing ".$categories{'order'});          &Apache::lonnet::logthis("Storing ".$categories{'order'});
         &Apache::lonnet::put('grading_categories',\%categories,$cdom,$cnum);          &Apache::lonnet::put('grading_categories',\%categories,$cdom,$cnum);
     }      }
 # new categories loaded now  # new categories loaded now
Line 455  sub process_category_edits { Line 455  sub process_category_edits {
     unless ($cangrade) { return %categories; }      unless ($cangrade) { return %categories; }
     my $cmd=$env{'form.cmd'};      my $cmd=$env{'form.cmd'};
     if ($cmd eq 'createnewcat') {      if ($cmd eq 'createnewcat') {
        %categories=&make_new_category($r,$cangrade,undef,%categories);          %categories=&make_new_category($r,$cangrade,undef,%categories);
     }       } elsif ($cmd=~/^delcat\_(.+)$/) {
 #          %categories=&del_category($1,$cangrade,%categories);
 # Business logic here      } else {
 #  # Simply store the rest of the stuff
           foreach my $id (split(/\,/,$categories{'order'})) {
               %categories=&set_category_name($cangrade,$id,$env{'form.name_'.$id},%categories);
   # More changes here
           }
       }
     return %categories;      return %categories;
 }  }
   
Line 543  ENDMOVE Line 548  ENDMOVE
             }              }
         }          }
         $r->print("\n</select>\n</td>\n");          $r->print("\n</select>\n</td>\n");
           $r->print('<td><a href="/adm/quickgrades?cmd=delcat_'.$id.'&storechanges=1">'.&mt('Delete').'</a></td>');
           $r->print('<td><input type="text" name="name_'.$id.
                     '" value="'.&Apache::lonhtmlcommon::entity_encode($categories{$id.'_name'}).'" /></td>');
       } else {
           $r->print('<td>'.$categories{$id.'_name'}.'</td>');
     }      }
     $r->print(&Apache::loncommon::end_data_table_row()."\n");      $r->print(&Apache::loncommon::end_data_table_row()."\n");
     return ($value,$weight);      return ($value,$weight);
Line 585  sub make_new_category { Line 594  sub make_new_category {
 }  }
   
 #  #
   # Delete category
   #
   
   sub del_category {
      my ($id,$cangrade,%categories)=@_; 
      my @neworder=();
      foreach my $currentid (split(/\,/,$categories{'order'})) {
         unless ($currentid eq $id) {
            push(@neworder,$currentid);
         }
      }
      $categories{'order'}=join(',',@neworder);
      return %categories;
   }
   
   #
 # Move a category to a desired position n the display order  # Move a category to a desired position n the display order
 #  #
   
Line 636  sub current_pos_category { Line 661  sub current_pos_category {
 # Set name of a category  # Set name of a category
 #  #
 sub set_category_name {  sub set_category_name {
     my ($canedit,$id,$name,%categories)=@_;      my ($cangrade,$id,$name,%categories)=@_;
     unless ($canedit) { return %categories; }      unless ($cangrade) { return %categories; }
     $categories{$id.'_name'}=$name;      $categories{$id.'_name'}=$name;
     return %categories;      return %categories;
 }  }

Removed from v.1.67  
changed lines
  Added in v.1.69


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