Diff for /loncom/homework/structuretags.pm between versions 1.530 and 1.531

version 1.530, 2015/02/23 10:40:01 version 1.531, 2015/03/07 23:13:09
Line 224  sub end_tex { Line 224  sub end_tex {
 }  }
   
 sub homework_js {  sub homework_js {
       my ($postsubmit,$timeout);
       if (($env{'request.course.id'}) && ($env{'request.state'} ne 'construct')) {
           my $crstype;
           if (&Apache::loncommon::course_type() eq 'Community') {
               $crstype = 'community';
           } else {
               if ($env{'course.'.$env{'request.course.id'}.'.internal.coursecode'}) {
                   $crstype = 'official';
               } elsif ($env{'course.'.$env{'request.course.id'}.'.internal.textbook'}) {
                   $crstype = 'textbook';
               } else {
                   $crstype = 'unofficial';
               }
           }
           $postsubmit = $env{'course.'.$env{'request.course.id'}.'.internal.postsubmit'};
           if ($postsubmit eq '') {
               my %domdefs = &Apache::lonnet::get_domain_defaults($env{'course.'.$env{'request.course.id'}.'.domain'});
               $postsubmit = $domdefs{'postsubmit'};
               unless ($postsubmit eq 'off') {
                   $timeout = $domdefs{$crstype.'postsubtimeout'};
               }
           } elsif ($postsubmit eq '0') {
               $postsubmit = 'off';
           } elsif ($postsubmit eq '1') {
               $postsubmit = 'on';
               $timeout = $env{'course.'.$env{'request.course.id'}.'.internal.postsubtimeout'};
               if ($timeout eq '') {
                   my %domdefs = &Apache::lonnet::get_domain_defaults($env{'course.'.$env{'request.course.id'}.'.domain'});
                   $timeout = $domdefs{$crstype.'postsubtimeout'};
               }
           }
           if ($timeout eq '') {
               $timeout = 60;
           }
       } else {
           my %domdefs = &Apache::lonnet::get_domain_defaults($env{'request.role.domain'});
           $postsubmit = $domdefs{'postsubmit'};
           unless ($postsubmit eq 'off') {
               $timeout = 60;
           }
       }
       my $jstimeout = 0;
       if ($timeout) {
           $jstimeout = 1000 * $timeout;
       }
     return &Apache::loncommon::resize_textarea_js().      return &Apache::loncommon::resize_textarea_js().
                 &Apache::loncommon::colorfuleditor_js().                  &Apache::loncommon::colorfuleditor_js().
            &setmode_javascript().             &setmode_javascript().
  <<'JS';   <<"JS";
 <script type="text/javascript">  <script type="text/javascript">
 // <![CDATA[  // <![CDATA[
 function setSubmittedPart (part,prefix) {  function setSubmittedPart (part,prefix) {
Line 258  function image_response_click (which, e) Line 303  function image_response_click (which, e)
   
 var submithandled = 0;  var submithandled = 0;
 var keypresshandled = 0;  var keypresshandled = 0;
   var postsubmit = '$postsubmit';
   
 $(document).ready(function(){  \$(document).ready(function(){
     if (postsubmit != 'off') {    
     $(document).keypress(function(event){      \$(document).keypress(function(event){
         var keycode = (event.keyCode ? event.keyCode : event.which);          var keycode = (event.keyCode ? event.keyCode : event.which);
         if ((keycode == '13') && (keypresshandled == 0)) {          if ((keycode == '13') && (keypresshandled == 0)) {
             if ( $( document.activeElement ).hasClass("LC_textline") ) {              if ( \$( document.activeElement ).hasClass("LC_textline") ) {
                 keypresshandled = 1;                  keypresshandled = 1;
                 var idsArray = $( document.activeElement ).attr("id").split(/HWVAL_/);                  var idsArray = \$( document.activeElement ).attr("id").split(/HWVAL_/);
                 if (idsArray.length) {                  if (idsArray.length) {
                     event.preventDefault();                      event.preventDefault();
                     var itemsArray = idsArray[1].split(/_/);                      var itemsArray = idsArray[1].split(/_/);
                     var buttonId = idsArray[0]+'submit_'+itemsArray[0];                      var buttonId = idsArray[0]+'submit_'+itemsArray[0];
                     $("#"+buttonId).trigger("click");                      \$("#"+buttonId).trigger("click");
                 }                  }
             }              }
         }          }
     });      });
   
     $(document).delegate('form :submit', 'click', function( event ) {      \$(document).delegate('form :submit', 'click', function( event ) {
         if ( $( this ).hasClass( "LC_hwk_submit" ) ) {          if ( \$( this ).hasClass( "LC_hwk_submit" ) ) {
             var buttonId = this.id;              var buttonId = this.id;
               var timeout = $jstimeout;
             if (submithandled == 0) {              if (submithandled == 0) {
                 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).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();
                 }                  }
                 $(this.form).submit();                  \$(this.form).submit();
                 $( ".LC_hwk_submit" ).prop( "disabled", true);                  \$( ".LC_hwk_submit" ).prop( "disabled", true);
                 $( ".LC_textline" ).prop( "readonly", "readonly");                  \$( ".LC_textline" ).prop( "readonly", "readonly");
                 event.preventDefault();                  event.preventDefault();
   
                   if (timeout > 0) {
                       setTimeout(function(){
                                          \$( "#msg_"+buttonId ).css({"display": "none"});
                                          if (( \$(this.form).id == "LC_page" ) && (\$('input[name="all_submit"]').length )) {
                                              if (buttonId != "all_submit") {
                                                  if (( "#"+buttonId+"_pressed" ).length) {
                                                      \$( "#"+buttonId+"_pressed" ).val( "" );
                                                  }
                                              }
                                          }
                                          \$( ".LC_hwk_submit" ).prop( "disabled", false);
                                          \$( ".LC_textline" ).prop( "readonly", false);
                                          submithandled = 0;
                                          keypresshandled = 0;
                                        }, timeout);
                   }
                 return true;                  return true;
             }              }
         }          }
     });      });
     }
 });  });
   
 // ]]>  // ]]>

Removed from v.1.530  
changed lines
  Added in v.1.531


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