Diff for /loncom/interface/spreadsheet/lonspreadsheet.pm between versions 1.40 and 1.44

version 1.40, 2005/04/07 06:56:23 version 1.44, 2006/04/06 20:24:13
Line 100  sub file_dialogs { Line 100  sub file_dialogs {
     my $message = '';      my $message = '';
     ##      ##
     ## Deal with saving the spreadsheet      ## Deal with saving the spreadsheet
       $spreadsheet->check_formulas_loaded();
     if ((exists($env{'form.save'}) || exists($env{'form.makedefault'})) &&       if ((exists($env{'form.save'}) || exists($env{'form.makedefault'})) && 
         exists($env{'form.savefilename'})) {          exists($env{'form.savefilename'})) {
         $spreadsheet->filename($env{'form.savefilename'});          $spreadsheet->filename($env{'form.savefilename'});
Line 263  sub handler { Line 264  sub handler {
     }      }
     $env{'form.sname'} = $name;      $env{'form.sname'} = $name;
     $env{'form.sdomain'} = $domain;      $env{'form.sdomain'} = $domain;
       my $section = &Apache::lonnet::getsection($domain,$name,
         $env{'request.course.id'});
       my $group;
       my @groups = ();
       if (($env{'user.name'} eq $name) && ($env{'user.domain'} eq $domain)) {
           @groups=&Apache::lonnet::sort_course_groups(
                                                    $env{'request.course.groups'},
                                                    $env{'request.course.id'});
       } else {
           my $grouplist = &Apache::lonnet::get_users_groups($domain,$name,
                                                       $env{'request.course.id'});
           if ($grouplist) {
               @groups=&Apache::lonnet::sort_course_groups($grouplist,
                                                       $env{'request.course.id'});
           }
       }
       if (@groups > 0) {
           $group = $groups[0];
       }
   
     ##      ##
     ## Check permissions      ## Check permissions
     my $allowed_to_edit = &Apache::lonnet::allowed('mgr',      my $allowed_to_edit = &Apache::lonnet::allowed('mgr',
Line 437  ENDSCRIPT Line 458  ENDSCRIPT
     &Apache::Spreadsheet::initialize_spreadsheet_package();      &Apache::Spreadsheet::initialize_spreadsheet_package();
     my $spreadsheet = undef;      my $spreadsheet = undef;
     if ($sheettype eq 'classcalc') {      if ($sheettype eq 'classcalc') {
         $spreadsheet = Apache::classcalc->new($name,$domain,$filename,undef);          $spreadsheet = Apache::classcalc->new($name,$domain,$filename,undef,
         $section,$group);
     } elsif ($sheettype eq 'studentcalc') {      } elsif ($sheettype eq 'studentcalc') {
         $spreadsheet = Apache::studentcalc->new($name,$domain,$filename,undef);          $spreadsheet = Apache::studentcalc->new($name,$domain,$filename,undef,
    $section,$group);
     } elsif ($sheettype eq 'assesscalc' &&       } elsif ($sheettype eq 'assesscalc' && 
              defined($symb) &&                defined($symb) && 
              $allowed_to_edit) {               $allowed_to_edit) {
         $spreadsheet = Apache::assesscalc->new($name,$domain,$filename,$symb);          $spreadsheet = Apache::assesscalc->new($name,$domain,$filename,$symb,
          $section,$group);
     } else {      } else {
         return HTTP_NOT_ACCEPTABLE;          return HTTP_NOT_ACCEPTABLE;
     }      }
Line 527  END Line 551  END
         $spreadsheet->display($r);          $spreadsheet->display($r);
     }      }
     $r->print('</form></body></html>');      $r->print('</form></body></html>');
       $spreadsheet->clear_package();
     return OK;      return OK;
 }  }
   

Removed from v.1.40  
changed lines
  Added in v.1.44


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