Diff for /loncom/homework/structuretags.pm between versions 1.386 and 1.395

version 1.386, 2007/08/03 23:29:57 version 1.395, 2007/09/10 17:02:32
Line 157  function setSubmittedPart (part) { Line 157  function setSubmittedPart (part) {
  $body_args{'no_title'}       = 1;   $body_args{'no_title'}       = 1;
  $body_args{'force_register'} = 1;   $body_args{'force_register'} = 1;
  $body_args{'add_entries'}    = \%add_entries;   $body_args{'add_entries'}    = \%add_entries;
    if ($env{'environment.remote'} eq 'off'
       && $env{'request.state'} eq   'construct') {
       $body_args{'only_body'}  = 1;
    }
     }      }
     $body_args{'no_auto_mt_title'} = 1;      $body_args{'no_auto_mt_title'} = 1;
     my $page_start = &Apache::loncommon::start_page($name,$extra_head,      my $page_start = &Apache::loncommon::start_page($name,$extra_head,
Line 202  function setSubmittedPart (part) { Line 206  function setSubmittedPart (part) {
 #use Time::HiRes();  #use Time::HiRes();
 sub get_resource_name {  sub get_resource_name {
     my ($parstack,$safeeval)=@_;      my ($parstack,$safeeval)=@_;
       my $name;
     if (defined($Apache::lonhomework::name)) {      if (defined($Apache::lonhomework::name)) {
  return $Apache::lonhomework::name;   $name = $Apache::lonhomework::name;
     }      } else {
     my ($symb)=&Apache::lonnet::whichuser();   my ($symb)=&Apache::lonnet::whichuser();
     my $name=&Apache::lonnet::gettitle($symb);   $name=&Apache::lonnet::gettitle($symb);
     if ($name eq '') {   if ($name eq '') {
  $name=&Apache::lonnet::EXT('resource.title');      $name=&Apache::lonnet::EXT('resource.title');
  if ($name eq 'con_lost') { $name = ''; }      if ($name eq 'con_lost') { $name = ''; }
     }   }
     if ($name!~/\S+/) {   if ($name!~/\S+/) {
  $name=$env{'request.uri'};      $name=$env{'request.uri'};
  $name=~s-.*/([^/]+)$-$1-;      $name=~s-.*/([^/]+)$-$1-;
    }
    # The name has had html tags escaped:
          
    $name=~s/&lt;/</gs;
    $name=~s/&gt;/>/gs;
   
    $Apache::lonhomework::name=$name;
     }      }
     $Apache::lonhomework::name=$name;  
     return $name;      return $name;
 }  }
   
Line 458  sub finalize_storage { Line 469  sub finalize_storage {
     }      }
     return $result;      return $result;
 }  }
 use Data::Dumper;  
   
 # -------------------------------------------------------------store_aggregates  # -------------------------------------------------------------store_aggregates
 # Sends hash of values to be incremented in nohist_resourcetracker.db  # Sends hash of values to be incremented in nohist_resourcetracker.db
Line 638  sub start_problem { Line 648  sub start_problem {
     }      }
   
     if ($target ne 'analyze') {      if ($target ne 'analyze') {
         if ($env{'request.state'} eq 'construct') { &set_problem_state('0'); }  
  $Apache::lonhomework::type=&Apache::lonnet::EXT('resource.0.type');   $Apache::lonhomework::type=&Apache::lonnet::EXT('resource.0.type');
  if (($env{'request.state'} eq 'construct') &&   if (($env{'request.state'} eq 'construct') &&
     defined($env{'form.problemtype'})) {      defined($env{'form.problemtype'})) {
Line 659  sub start_problem { Line 668  sub start_problem {
     $Apache::lonhomework::default_type = $Apache::lonhomework::type;      $Apache::lonhomework::default_type = $Apache::lonhomework::type;
   
     &initialize_storage();      &initialize_storage();
       if ($target ne 'analyze'
           && $env{'request.state'} eq 'construct') {
    &set_problem_state('0');
       }
   
     if ($target eq 'web') {      if ($target eq 'web') {
  &Apache::lonxml::debug(" grading history ");   &Apache::lonxml::debug(" grading history ");
  &Apache::lonhomework::showhash(%Apache::lonhomework::history);   &Apache::lonhomework::showhash(%Apache::lonhomework::history);
Line 751  sub start_problem { Line 765  sub start_problem {
     $msg.='<h1>'.&mt('Not open to be viewed').'</h1>';      $msg.='<h1>'.&mt('Not open to be viewed').'</h1>';
  }   }
  if ($status eq 'CLOSED' || $status eq 'INVALID_ACCESS') {   if ($status eq 'CLOSED' || $status eq 'INVALID_ACCESS') {
     $msg.='The problem '.$accessmsg;      $msg.=&mt('The problem ').$accessmsg;
  } elsif ($status eq 'UNCHECKEDOUT') {   } elsif ($status eq 'UNCHECKEDOUT') {
     $msg.=&checkout_msg();      $msg.=&checkout_msg();
  } elsif ($status eq 'NOT_YET_VIEWED') {   } elsif ($status eq 'NOT_YET_VIEWED') {
Line 1126  sub start_languageblock { Line 1140  sub start_languageblock {
  $target eq 'tex' || $target eq 'analyze' || $target eq 'webgrade') {   $target eq 'tex' || $target eq 'analyze' || $target eq 'webgrade') {
  my $include = $token->[2]->{'include'};   my $include = $token->[2]->{'include'};
  my $exclude = $token->[2]->{'exclude'};   my $exclude = $token->[2]->{'exclude'};
         my %languages=&Apache::loncommon::display_languages();          my $preferred_language=(&Apache::loncommon::preferred_languages)[0];
   # This should not even happen, since we should at least have the server language
           if (!$preferred_language) { $preferred_language='en'; }
   # If the languageblock has no arguments, show the contents
         $result='1';          $result='1';
   # Do we have an include argument?
  if ($include) {   if ($include) {
   # If include is specified, by default, don't render the block
             $result='';              $result='';
             foreach (split(/\,/,$include)) {              foreach my $included_language (split(/\,/,$include)) {
                 if ($languages{$_}) { $result='1'; }  # ... but if my preferred language is included, render it
                   if ($included_language eq $preferred_language) { $result='1'; }
             }              }
  }   }
   # Do we have an exclude argument?
         if ($exclude) {          if ($exclude) {
             foreach (split(/\,/,$exclude)) {              $result='1';
                 if ($languages{$_}) { $result='0'; }              foreach my $excluded_language (split(/\,/,$exclude)) {
                   if ($excluded_language eq $preferred_language) { $result='0'; }
             }              }
  }   }
  if ( ! $result ) {   if ( ! $result ) {
Line 1428  sub start_part { Line 1450  sub start_part {
  if ($target eq 'tex') {   if ($target eq 'tex') {
     if (not $env{'form.problem_split'}=~/yes/) {      if (not $env{'form.problem_split'}=~/yes/) {
  if ($$tagstack[-2] eq 'td') {   if ($$tagstack[-2] eq 'td') {
     $result.='\vskip 0 mm \noindent \begin{minipage}{\textwidth}\noindent';      $result.='\noindent \begin{minipage}{\textwidth}\noindent';
  } else {   } else {
     $result.='\noindent \end{minipage}\vskip 0 mm \noindent \begin{minipage}{\textwidth}\noindent';      $result.='\noindent \end{minipage}\vskip 0 mm \noindent \begin{minipage}{\textwidth}\noindent';
  }   }

Removed from v.1.386  
changed lines
  Added in v.1.395


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