Diff for /loncom/homework/structuretags.pm between versions 1.435 and 1.444.4.1

version 1.435, 2008/11/25 13:16:17 version 1.444.4.1, 2009/08/12 22:57:14
Line 243  sub page_start { Line 243  sub page_start {
   
  my ($symb,undef,undef,undef,$publicuser)= &Apache::lonnet::whichuser();   my ($symb,undef,undef,undef,$publicuser)= &Apache::lonnet::whichuser();
  if ($symb eq '' && !$publicuser) {   if ($symb eq '' && !$publicuser) {
     my $help = &Apache::loncommon::help_open_topic("Ambiguous_Reference");          if ($symb eq '' && !$publicuser) {
     $help=&mt("Browsing resource, all submissions are temporary.")."<br />";              $page_start .= '<p class="LC_info">'
     $page_start .= $help;                            .&mt('Browsing resource, all submissions are temporary.')
  }                            .'</p>';
           }
     }      }
   
     if (!defined($found{'body'}) && $env{'request.state'} ne 'construct') {      if (!defined($found{'body'}) && $env{'request.state'} ne 'construct') {
Line 418  sub problem_web_to_edit_header { Line 419  sub problem_web_to_edit_header {
     '</div>';      '</div>';
     }      }
           
     my $show_all_foils_text =       my $show_all_foils_text =
  ($Apache::lonhomework::parsing_a_task) ?          ($Apache::lonhomework::parsing_a_task) ?
  &mt('&nbsp;Show&nbsp;All&nbsp;Instances')          &mt('Show All Instances')
  : &mt('&nbsp;Show&nbsp;All&nbsp;Foils');          : &mt('Show All Foils');
   
     my $show_all= '<span class="LC_nobreak"><label><input type="checkbox" name="showallfoils" ';      my $show_all= '<span class="LC_nobreak"><label for="showallfoils">'
     if (defined($env{'form.showallfoils'})) { $show_all.='checked="checked"'; }                   .'<input type="checkbox" name="showallfoils"';
     $show_all.= ' />'.$show_all_foils_text.'</label></span>';      if (defined($env{'form.showallfoils'})) { $show_all.=' checked="checked"'; }
       $show_all.= ' /> '.$show_all_foils_text
                  .'</label></span>';
   
   
   
Line 674  sub checkout_msg { Line 677  sub checkout_msg {
     return (<<ENDCHECKOUT);      return (<<ENDCHECKOUT);
 <h2>$lt{'resource'}</h2>  <h2>$lt{'resource'}</h2>
     <p>$lt{'id_expln'}</p>      <p>$lt{'id_expln'}</p>
 <font color="red">  <p class="LC_warning">$lt{'warning'}</p>
 <p>$lt{'warning'}</p>  <form name="checkout" method="post" action="$uri">
 </font>  
 <form name="checkout" method="POST" action="$uri">  
 <input type="hidden" name="doescheckout" value="yes" />  <input type="hidden" name="doescheckout" value="yes" />
 <input type="button" name="checkoutbutton" value="$lt{'checkout'}" onClick="javascript:if (confirm('$lt{'checkout?'}')) { document.checkout.submit(); }" />  <input type="button" name="checkoutbutton" value="$lt{'checkout'}" onClick="javascript:if (confirm('$lt{'checkout?'}')) { document.checkout.submit(); }" />
 </form>  </form>
Line 711  sub firstaccess_msg { Line 712  sub firstaccess_msg {
     my $buttontext = &mt('Show Resource');      my $buttontext = &mt('Show Resource');
     my $timertext = &mt('Start Timer?');      my $timertext = &mt('Start Timer?');
     $result .= (<<ENDCHECKOUT);      $result .= (<<ENDCHECKOUT);
 <form name="markaccess" method="POST" action="$uri">  <form name="markaccess" method="post" action="$uri">
 <input type="hidden" name="markaccess" value="yes" />  <input type="hidden" name="markaccess" value="yes" />
 <input type="button" name="accessbutton" value="$buttontext" onClick="javascript:if (confirm('$timertext')) { document.markaccess.submit(); }" />  <input type="button" name="accessbutton" value="$buttontext" onClick="javascript:if (confirm('$timertext')) { document.markaccess.submit(); }" />
 </form>  </form>
Line 902  sub start_problem { Line 903  sub start_problem {
     '<input type="hidden" name="username"      '<input type="hidden" name="username"
                              value="'.$env{'form.username'}.'" />';                               value="'.$env{'form.username'}.'" />';
     }      }
     if ($env{'request.role.adv'}) {              if ($env{'request.role.adv'}) {
  $form_tag_start.=                  $form_tag_start.= ' <label class="LC_nobreak">'
     ' <label><input type="checkbox" name="showallfoils" ';                           .'<input type="checkbox" name="showallfoils"';
  if (defined($env{'form.showallfoils'})) {                  if (defined($env{'form.showallfoils'})) {
     $form_tag_start.='checked="on"';                      $form_tag_start.=' checked="checked"';
  }                  }
  $form_tag_start.= ' />'.&mt('&nbsp;Show&nbsp;All&nbsp;Foils').                  $form_tag_start.= ' /> '
     '</label>';                                   .&mt('Show All Foils')
                                    .'</label>';
   
     }      }
             if ($Apache::lonhomework::type eq 'practice') {              if ($Apache::lonhomework::type eq 'practice') {
                 $form_tag_start.=&practice_problem_header();                  $form_tag_start.=&practice_problem_header();
Line 939  sub start_problem { Line 942  sub start_problem {
  my $msg;   my $msg;
  if ($status eq 'UNAVAILABLE') {   if ($status eq 'UNAVAILABLE') {
     $msg.='<h1>'.&mt('Unable to determine if this resource is open due to network problems. Please try again later.').'</h1>';      $msg.='<h1>'.&mt('Unable to determine if this resource is open due to network problems. Please try again later.').'</h1>';
                   } elsif ($status eq 'NOT_IN_A_SLOT') {
                       $msg.='<h1>'.&mt('You are not currently signed up to work at this time and/or place.').'</h1>';
  } elsif ($status ne 'NOT_YET_VIEWED') {   } elsif ($status ne 'NOT_YET_VIEWED') {
     $msg.='<h1>'.&mt('Not open to be viewed').'</h1>';      $msg.='<h1>'.&mt('Not open to be viewed').'</h1>';
  }   }
Line 949  sub start_problem { Line 954  sub start_problem {
  } elsif ($status eq 'NOT_YET_VIEWED') {   } elsif ($status eq 'NOT_YET_VIEWED') {
     $msg.=&firstaccess_msg($accessmsg,$symb);      $msg.=&firstaccess_msg($accessmsg,$symb);
  } elsif ($status eq 'NOT_IN_A_SLOT') {   } elsif ($status eq 'NOT_IN_A_SLOT') {
     $msg.=&Apache::bridgetask::add_request_another_attempt_button("Sign up for time to work.");      $msg.=&Apache::bridgetask::add_request_another_attempt_button("Sign up for time to work");
  }   }
  $result.=$msg.'<br />';   $result.=$msg.'<br />';
     } elsif ($target eq 'tex') {      } elsif ($target eq 'tex') {
  my $startminipage = ($env{'form.problem_split'}=~/yes/i)? ''   my $startminipage = ($env{'form.problem_split'}=~/yes/i)? ''
                     : '\begin{minipage}{\textwidth}';                      : '\begin{minipage}{\textwidth}';
  $result.='\begin{document}\noindent \vskip 1 mm '.   $result.='\noindent \vskip 1 mm '.
     $startminipage.'\vskip 0 mm';      $startminipage.'\vskip 0 mm';
  if ($status eq 'UNAVAILABLE') {   if ($status eq 'UNAVAILABLE') {
     $result.=&mt('Unable to determine if this resource is open due to network problems. Please try again later.').'\vskip 0 mm ';      $result.=&mt('Unable to determine if this resource is open due to network problems. Please try again later.').'\vskip 0 mm ';
Line 1056  sub end_problem { Line 1061  sub end_problem {
     $allow_print_points=0;      $allow_print_points=0;
  }   }
  my $name_of_resourse= &Apache::lonxml::latex_special_symbols(&get_resource_name($parstack,$safeeval),'header');   my $name_of_resourse= &Apache::lonxml::latex_special_symbols(&get_resource_name($parstack,$safeeval),'header');
  my $begin_doc='\begin{document} \typeout{STAMPOFPASSEDRESOURCESTART Resource <h2>"'.$name_of_resourse.'"</h2> located in <br /><small><b>'.$env{'request.uri'}.'</b></small><br /> STAMPOFPASSEDRESOURCEEND} \noindent ';   my $begin_doc=' \typeout{STAMPOFPASSEDRESOURCESTART Resource <h2>"'.$name_of_resourse.'"</h2> located in <br /><small><b>'.$env{'request.uri'}.'</b></small><br /> STAMPOFPASSEDRESOURCEEND} \noindent ';
  my $toc_line='\vskip 1 mm\noindent '.$startminipage.   my $toc_line='\vskip 1 mm\noindent '.$startminipage.
     '\addcontentsline{toc}{subsection}{'.$name_of_resourse.'}';      '\addcontentsline{toc}{subsection}{'.$name_of_resourse.'}';
   
Line 1064  sub end_problem { Line 1069  sub end_problem {
  #  it in the problem header.  We have been logging the   #  it in the problem header.  We have been logging the
  #  last due date written to file.    #  last due date written to file. 
   
  my $duetime = &Apache::lonnet::EXT("resource.$id.duedate");    my $duetime = &Apache::lonnet::EXT("resource.$id.duedate");
  my $duedate = POSIX::strftime("%c",localtime($duetime));   my $duedate = POSIX::strftime("%c",localtime($duetime));
           my $duedate_text = &mt('Due date: [_1]'
                                 ,&Apache::lonlocal::locallocaltime($duetime));
  my $temp_file;   my $temp_file;
  my $filename = "/home/httpd/prtspool/$env{'user.name'}_$env{'user.domain'}_printout.due";   my $filename = "/home/httpd/prtspool/$env{'user.name'}_$env{'user.domain'}_printout.due";
   
Line 1097  sub end_problem { Line 1104  sub end_problem {
     if (not $env{'request.symb'} =~ m/\.page_/) {      if (not $env{'request.symb'} =~ m/\.page_/) {
  if(not $duedate=~m/1969/ and $Apache::lonhomework::type ne 'exam') {   if(not $duedate=~m/1969/ and $Apache::lonhomework::type ne 'exam') {
     $frontmatter .= $begin_doc.      $frontmatter .= $begin_doc.
  '\textit{Due date: '.$duedate.'} '.$toc_line;   '\textit{'.$duedate_text.'} '.$toc_line;
  } else {   } else {
     $frontmatter.= $begin_doc.$toc_line;      $frontmatter.= $begin_doc.$toc_line;
     if ($Apache::lonhomework::type eq 'exam' and $allow_print_points==1) { $frontmatter .= '\fbox{\textit{'.$weight.' pt}}';}      if ($Apache::lonhomework::type eq 'exam' and $allow_print_points==1) { $frontmatter .= '\fbox{\textit{'.$weight.' pt}}';}
  }   }
     } else {      } else {
  $frontmatter .= '\vskip 1mm\textit{Due date: '.$duedate.'} \\\\\\\\'.$startminipage;   $frontmatter .= '\vskip 1mm\textit{'.$duedate_text.'} \\\\\\\\'.$startminipage;
     }      }
  } else {   } else {
     if (not $env{'request.symb'} =~ m/\.page_/) {      if (not $env{'request.symb'} =~ m/\.page_/) {
Line 1331  sub start_languageblock { Line 1338  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 @preferred_languages=&Apache::loncommon::preferred_languages();          my @preferred_languages=&Apache::lonlocal::preferred_languages();
 # This should not even happen, since we should at least have the server language  # This should not even happen, since we should at least have the server language
         if (!$preferred_languages[0]) { $preferred_languages[0]='en'; }          if (!$preferred_languages[0]) { $preferred_languages[0]='en'; }
 # Now loop over all languages in order of preference  # Now loop over all languages in order of preference
Line 1599  sub start_randomlist { Line 1606  sub start_randomlist {
     my $showarg=&Apache::lonxml::get_param('show',$parstack,$safeeval);      my $showarg=&Apache::lonxml::get_param('show',$parstack,$safeeval);
     $showarg--;      $showarg--;
     if ( ($showarg >= 0) && ($showarg < $show) ) { $show = $showarg; }      if ( ($showarg >= 0) && ($showarg < $show) ) { $show = $showarg; }
               if (($target eq 'analyze') && ($env{'form.check_parts_withrandomlist'})) {
                   my @currlist;
                   my $part = $Apache::inputtags::part;
                   if ($part ne '') {
                       if (ref($Apache::lonhomework::analyze{'parts_withrandomlist'}) eq 'ARRAY') {
                           my @currlist = @{$Apache::lonhomework::analyze{'parts_withrandomlist'}};
                           if (!(grep(/^\Q$part\E$/,@currlist))) {
                               push(@{$Apache::lonhomework::analyze{'parts_withrandomlist'}},$part);
                           }
                       } else {
                           push(@{$Apache::lonhomework::analyze{'parts_withrandomlist'}},$part);
                       }
                   }
               }
     for(0 .. $show) {      for(0 .. $show) {
  $bodytext .= "$randomlist[ $idx_arr[$_] ]";   $bodytext .= "$randomlist[ $idx_arr[$_] ]";
     }      }
Line 1942  sub end_startouttext { Line 1963  sub end_startouttext {
     if ($target eq 'edit') {      if ($target eq 'edit') {
  my $areaid = 'homework_edit_'.$Apache::lonxml::curdepth;   my $areaid = 'homework_edit_'.$Apache::lonxml::curdepth;
  $text=&Apache::lonxml::get_all_text("endouttext",$parser,$style);   $text=&Apache::lonxml::get_all_text("endouttext",$parser,$style);
    $result.=&Apache::edit::start_table($token)."<tr><td>".&mt('Text Block')."</td>"
  $result.=&Apache::edit::start_table($token)."<tr><td>".&mt('Text Block')."</td>                   .'<td><span class="LC_nobreak">'.&mt('Delete?').' '
 <td>".&mt('Delete:').                   .&Apache::edit::deletelist($target,$token)
                  &Apache::edit::deletelist($target,$token)                   .'</span></td>';
  ."</td>";  
         unless ($env{'environment.wysiwygeditor'} eq 'on') {          unless ($env{'environment.wysiwygeditor'} eq 'on') {
     $result .= '<td align="left">'      $result .= '<td align="left">'
  .&Apache::lonhtmlcommon::dragmath_button($areaid,1)   .&Apache::lonhtmlcommon::dragmath_button($areaid,1)
Line 2019  sub start_simpleeditbutton { Line 2039  sub start_simpleeditbutton {
         my $url=$env{'request.noversionuri'};          my $url=$env{'request.noversionuri'};
         $url=~s/\?.*$//;          $url=~s/\?.*$//;
  my ($symb) = &Apache::lonnet::whichuser();   my ($symb) = &Apache::lonnet::whichuser();
  $result='<table width="100%" bgcolor="#FFFFAA" border="2"><tr><td>'.  #       Warning make more sense and is more important on edit screen
                 '<a href="'.$url.'/smpedit?symb='.&escape($symb).'">'.&mt('Edit').'</a> - '.&mt('Note: it can take up to 10 minutes for changes to take effect for all users.').  #       $result='<p class="LC_warning">'
 &Apache::loncommon::help_open_topic('Caching').'</td></tr></table><br />';  #              .&mt('Note: it can take up to 10 minutes for changes to take effect for all users.')
   #              .&Apache::loncommon::help_open_topic('Caching')
   #              .'</p>';
           $result.=&Apache::lontemplate::start_functionslist()
                   .&Apache::lontemplate::item_functionslist(
                        '<a href="'.$url.'/smpedit?symb='.&escape($symb).'">'.&mt('Edit').'</a>')
                   .&Apache::lontemplate::end_functionslist();
   
     }      }
     return $result;      return $result;
 }  }

Removed from v.1.435  
changed lines
  Added in v.1.444.4.1


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