Diff for /loncom/homework/structuretags.pm between versions 1.512.2.13.2.2 and 1.512.2.15

version 1.512.2.13.2.2, 2020/06/03 18:40:33 version 1.512.2.15, 2018/09/14 23:09:43
Line 342  var postsubmit = '$postsubmit'; Line 342  var postsubmit = '$postsubmit';
                 submithandled = 1;                  submithandled = 1;
                 \$( "#msg_"+buttonId ).css({"display": "inline","background-color": "#87cefa",                  \$( "#msg_"+buttonId ).css({"display": "inline","background-color": "#87cefa",
                                            "color": "black","padding": "2px"}) ;                                             "color": "black","padding": "2px"}) ;
                 if (( \$(this.form).attr("id") == "LC_page" ) && (\$('input[name="all_submit"]').length )) {                  if (( \$(this.form).id == "LC_page" ) && (\$('input[name="all_submit"]').length )) {
                     if (buttonId != "all_submit") {                      if (buttonId != "all_submit") {
                         \$( ".LC_status_"+buttonId ).hide();                          \$( ".LC_status_"+buttonId ).hide();
                     }                          if (( "#"+buttonId+"_pressed" ).length) {
                     if (( "#"+buttonId+"_pressed" ).length) {                              \$( "#"+buttonId+"_pressed" ).val( "1" );
                         \$( "#"+buttonId+"_pressed" ).val( "1" );                          }
                     }                      }
                 } else {                  } else {
                     \$( ".LC_status_"+buttonId ).hide();                      \$( ".LC_status_"+buttonId ).hide();
Line 360  var postsubmit = '$postsubmit'; Line 360  var postsubmit = '$postsubmit';
                 if (timeout > 0) {                  if (timeout > 0) {
                     setTimeout(function(){                      setTimeout(function(){
                                        \$( "#msg_"+buttonId ).css({"display": "none"});                                         \$( "#msg_"+buttonId ).css({"display": "none"});
                                        if (( \$(this.form).attr("id") == "LC_page" ) && (\$('input[name="all_submit"]').length )) {                                         if (( \$(this.form).id == "LC_page" ) && (\$('input[name="all_submit"]').length )) {
                                            if (( "#"+buttonId+"_pressed" ).length) {                                             if (buttonId != "all_submit") {
                                                \$( "#"+buttonId+"_pressed" ).val( "" );                                                 if (( "#"+buttonId+"_pressed" ).length) {
                                                      \$( "#"+buttonId+"_pressed" ).val( "" );
                                                  }
                                            }                                             }
                                        }                                         }
                                        \$( ".LC_hwk_submit" ).prop( "disabled", false);                                         \$( ".LC_hwk_submit" ).prop( "disabled", false);
Line 648  sub setup_rndseed { Line 650  sub setup_rndseed {
     unless (defined($questiontype)) {      unless (defined($questiontype)) {
         $questiontype = $Apache::lonhomework::type;          $questiontype = $Apache::lonhomework::type;
     }      }
     if ($env{'request.state'} eq "construct"       if (($env{'request.state'} eq "construct") 
  || $symb eq ''           || ($symb eq '')
  || $Apache::lonhomework::type eq 'practice'          || ($Apache::lonhomework::type eq 'practice')
  || $Apache::lonhomework::history{'resource.CODE'}) {          || ($Apache::lonhomework::history{'resource.CODE'}) 
           || (($env{'form.code_for_randomlist'}) && ($target eq 'analyze'))) {
  &Apache::loncommon::get_unprocessed_cgi($ENV{'QUERY_STRING'},   &Apache::loncommon::get_unprocessed_cgi($ENV{'QUERY_STRING'},
  ['rndseed']);   ['rndseed']);
  $rndseed=$env{'form.rndseed'};   $rndseed=$env{'form.rndseed'};
Line 660  sub setup_rndseed { Line 663  sub setup_rndseed {
     if (!$rndseed) {      if (!$rndseed) {
  $rndseed=time;   $rndseed=time;
     }      }
     $env{'form.rndseed'}=$rndseed;              unless ($env{'form.code_for_randomlist'}) {
                   $env{'form.rndseed'}=$rndseed;
               }
  }   }
         if (($env{'request.state'} eq "construct") &&           if (($env{'request.state'} eq "construct") && 
             ($Apache::lonhomework::type eq 'randomizetry')) {              ($Apache::lonhomework::type eq 'randomizetry')) {
Line 688  sub setup_rndseed { Line 693  sub setup_rndseed {
        $rndseed=join(':',&Apache::lonnet::digest($rndseed));         $rndseed=join(':',&Apache::lonnet::digest($rndseed));
             }              }
         }          }
         if ($Apache::lonhomework::history{'resource.CODE'}) {          if (($env{'form.code_for_randomlist'}) && ($target eq 'analyze')) {
               $env{'form.CODE'} = $env{'form.code_for_randomlist'};
               $rndseed=&Apache::lonnet::rndseed();
               undef($env{'form.CODE'});
           } elsif ($Apache::lonhomework::history{'resource.CODE'}) {
    $rndseed=&Apache::lonnet::rndseed();     $rndseed=&Apache::lonnet::rndseed();
  }   }
         $set_safespace = 1;          $set_safespace = 1;
Line 1523  sub start_problem { Line 1532  sub start_problem {
         $target eq 'tex') {          $target eq 'tex') {
         if ($env{'form.markaccess'}) {          if ($env{'form.markaccess'}) {
             my @interval=&Apache::lonnet::EXT("resource.0.interval");              my @interval=&Apache::lonnet::EXT("resource.0.interval");
             my ($timelimit) = ($interval[0] =~ /^(\d+)/);              &Apache::lonnet::set_first_access($interval[1],$interval[0]);
             &Apache::lonnet::set_first_access($interval[1],$timelimit);  
         }          }
   
         ($status,$accessmsg,$slot_name,$slot) =          ($status,$accessmsg,$slot_name,$slot) =
Line 2008  sub end_library { Line 2016  sub end_library {
      && ($#$tagstack eq 0 && $$tagstack[0] eq 'library')        && ($#$tagstack eq 0 && $$tagstack[0] eq 'library') 
      && $env{'request.state'} eq "construct") {       && $env{'request.state'} eq "construct") {
  $result.='</form>'.&Apache::loncommon::end_page({'discussion' => 1});   $result.='</form>'.&Apache::loncommon::end_page({'discussion' => 1});
       } elsif ($target eq 'meta') {
           $result.=&Apache::response::meta_response_order();
     }      }
     if ( $#$tagstack eq 0 && $$tagstack[0] eq 'library') {      if ( $#$tagstack eq 0 && $$tagstack[0] eq 'library') {
  &reset_problem_globals('library');   &reset_problem_globals('library');
Line 2490  sub start_randomlist { Line 2500  sub start_randomlist {
  }   }
  if (@randomlist) {   if (@randomlist) {
     my @idx_arr = (0 .. $#randomlist);      my @idx_arr = (0 .. $#randomlist);
     &Apache::structuretags::shuffle(\@idx_arr);              if ($env{'form.code_for_randomlist'}) {
                   &Apache::structuretags::shuffle(\@idx_arr,$target);
                   undef($env{'form.code_for_randomlist'});
               } else {
                   &Apache::structuretags::shuffle(\@idx_arr);
               }
     my $bodytext = '';      my $bodytext = '';
     my $show=$#randomlist;      my $show=$#randomlist;
     my $showarg=&Apache::lonxml::get_param('show',$parstack,$safeeval);      my $showarg=&Apache::lonxml::get_param('show',$parstack,$safeeval);
Line 2529  sub start_randomlist { Line 2544  sub start_randomlist {
 }  }
   
 sub shuffle {  sub shuffle {
     my $a=shift;      my ($a,$target) = @_;
     my $i;      my $i;
     if (ref($a) eq 'ARRAY' && @$a) {      if (ref($a) eq 'ARRAY' && @$a) {
  &Apache::response::pushrandomnumber();   &Apache::response::pushrandomnumber(undef,$target);
  for($i=@$a;--$i;) {   for($i=@$a;--$i;) {
     my $j=int(&Math::Random::random_uniform() * ($i+1));      my $j=int(&Math::Random::random_uniform() * ($i+1));
     next if $i == $j;      next if $i == $j;

Removed from v.1.512.2.13.2.2  
changed lines
  Added in v.1.512.2.15


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