Diff for /loncom/interface/lonquickgrades.pm between versions 1.75 and 1.77

version 1.75, 2011/03/12 02:58:44 version 1.77, 2011/03/21 00:56:58
Line 495  sub process_category_edits { Line 495  sub process_category_edits {
         %categories=&add_category_content($1,$cangrade,$env{'form.addcont_'.$1.'_symb'},%categories);          %categories=&add_category_content($1,$cangrade,$env{'form.addcont_'.$1.'_symb'},%categories);
     } elsif ($cmd=~/^delcont\_(.+)\_\_\_\_\_\_(.+)$/) {      } elsif ($cmd=~/^delcont\_(.+)\_\_\_\_\_\_(.+)$/) {
         %categories=&del_category_content($1,$cangrade,$2,%categories);          %categories=&del_category_content($1,$cangrade,$2,%categories);
       } elsif ($cmd=~/^newrule\_(.+)$/) {
           %categories=&add_calculation_rule($1,$cangrade,':',%categories);
     }      }
 # Move to a new position  # Move to a new position
     my $moveid=$env{'form.storemove'};      my $moveid=$env{'form.storemove'};
Line 607  ENDMOVE Line 609  ENDMOVE
     }      }
     $r->print('</td>');       $r->print('</td>'); 
 # Calculation  # Calculation
 # FIXME: just placeholders      $r->print('<td><ul>');
       foreach my $calcrule (split(/\,/,$categories{$id.'_calculations'})) {
           $r->print('<li>');
           $r->print(&pretty_prt_rule($calcrule));
           if ($cangrade) {
              $r->print(' <a href="javascript:storecmd(\'delcalc_'.$id.'______'.$calcrule.'\');">'.&mt('Delete').'</a>');
           }
           $r->print('</li>');
       }
       $r->print('</ul>');
     if ($cangrade) {      if ($cangrade) {
        $r->print("<td>Calculation Edit</td>");          $r->print('<br />'.&new_calc_rule_form($id));
     } else {  
        $r->print("<td>Calculation</td>");  
     }      }
       $r->print('</td>');
   
   
 # Total  # Total
     if ($cangrade) {      if ($cangrade) {
        $r->print('<td>'.         $r->print('<td>'.
Line 674  sub make_new_category { Line 686  sub make_new_category {
     return %categories;      return %categories;
 }  }
   
   
   # === Calculation Rule Editing
   
   sub pretty_prt_rule {
       my ($rule)=@_;
       return $rule;
   }
   
   sub new_calc_rule_form {
       my ($id)=@_;
       return '<a href="javascript:storecmd(\'newrule_'.$id.'\');">'.&mt('New Calculation Rule').'</a>';
   }
   
   #
   # Add a calculation rule
   #
   
   sub add_calculation_rule {
       my ($id,$cangrade,$newcontent,%categories)=@_;
       unless ($cangrade) { return %categories; }
       my %newcontent=($newcontent => 1);
       foreach my $current (split(/\,/,$categories{$id.'_calculations'})) {
           $newcontent{$current}=1;
       }
       $categories{$id.'_calculations'}=join(',',sort(keys(%newcontent)));
       return %categories;
   }
   
   #
   # Delete a calculation rule
   #
   
   sub del_calculation_rule {
       my ($id,$cangrade,$delcontent,%categories)=@_;
       unless ($cangrade) { return %categories; }
       my @newcontent=();
       foreach my $current (split(/\,/,$categories{$id.'_calculations'})) {
           unless ($current eq $delcontent) {
               push(@newcontent,$current);
           }
       }
       $categories{$id.'_calculations'}=join(',',@newcontent);
       return %categories;
   }
   
   # === Category Editing
   
 #  #
 # Add to category content  # Add to category content
 #  #

Removed from v.1.75  
changed lines
  Added in v.1.77


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