Diff for /loncom/homework/structuretags.pm between versions 1.399 and 1.404

version 1.399, 2007/09/12 08:35:44 version 1.404, 2007/10/16 23:20:25
Line 92  sub end_tex { Line 92  sub end_tex {
     return '';      return '';
 }  }
   
   sub homework_js {
       return &Apache::loncommon::resize_textarea_js().
    <<'JS';
   <script type="text/javascript">
   function setSubmittedPart (part) {
      this.document.lonhomework.submitted.value="part_"+part;
   }
   
   function image_response_click (which, e) {
       init_geometry();
       if (!e) { e = window.event; } //IE
       var input_element = document.lonhomework.elements[which];
       var token_element = document.lonhomework.elements[which+'_token'];
       var token = token_element.value;
       var img_element   = document.getElementById(which+'_imageresponse');
       var x= e.clientX-getX(img_element)+Geometry.getHorizontalScroll();
       var y= e.clientY-getY(img_element)+Geometry.getVerticalScroll();
       var click = x+':'+y;
       input_element.value = click;
       img_element.src = '/adm/randomlabel.png?token='+token+'&clickdata='+click;
   }
   </script>
   JS
   }
   
 sub page_start {  sub page_start {
     my ($target,$token,$tagstack,$parstack,$parser,$safeeval,$name,      my ($target,$token,$tagstack,$parstack,$parser,$safeeval,$name,
  $extra_head)=@_;   $extra_head)=@_;
Line 108  sub page_start { Line 133  sub page_start {
    $parstack,$parser,$safeeval);     $parstack,$parser,$safeeval);
     }      }
   
     $extra_head.= '      $extra_head .= &homework_js();
 <script type="text/javascript">  
 function setSubmittedPart (part) {  
    this.document.lonhomework.submitted.value="part_"+part;  
 }  
 </script>  
 ';  
   
     my %body_args;      my %body_args;
     if (defined($found{'html'})) {      if (defined($found{'html'})) {
Line 139  function setSubmittedPart (part) { Line 158  function setSubmittedPart (part) {
     } elsif (!defined($found{'body'})       } elsif (!defined($found{'body'}) 
      && $env{'request.state'} eq 'construct') {       && $env{'request.state'} eq 'construct') {
  if ($target eq 'web' || $target eq 'edit') {   if ($target eq 'web' || $target eq 'edit') {
     # no extra args to bodytag      if ($env{'environment.remote'} ne 'off') {
    $body_args{'only_body'}  = 1;
       }
  }   }
     } elsif (!defined($found{'body'})) {      } elsif (!defined($found{'body'})) {
  my %add_entries;   my %add_entries;
Line 1468  sub start_part { Line 1489  sub start_part {
     @Apache::inputtags::previous=();      @Apache::inputtags::previous=();
     @Apache::inputtags::previous_version=();      @Apache::inputtags::previous_version=();
     $Apache::lonhomework::problemstatus=&get_problem_status($id);      $Apache::lonhomework::problemstatus=&get_problem_status($id);
       &Apache::response::reset_params();
   
     my $hidden=&Apache::loncommon::check_if_partid_hidden($Apache::inputtags::part);      my $hidden=&Apache::loncommon::check_if_partid_hidden($Apache::inputtags::part);
     my $newtype=&Apache::lonnet::EXT("resource.$id.type");      my $newtype=&Apache::lonnet::EXT("resource.$id.type");
     if ($newtype) { $Apache::lonhomework::type=$newtype; }      if ($newtype) { $Apache::lonhomework::type=$newtype; }
Line 1724  sub start_startouttext { Line 1747  sub start_startouttext {
     my ($target,$token,$tagstack,$parstack,$parser,$safeeval)=@_;      my ($target,$token,$tagstack,$parstack,$parser,$safeeval)=@_;
     my @result=(''.'');      my @result=(''.'');
     if ($target eq 'edit' || $target eq 'modified' ) { @result=('','no'); }      if ($target eq 'edit' || $target eq 'modified' ) { @result=('','no'); }
       
       my $nesting = 
    &Apache::lonxml::set_state('outtext',
      &Apache::lonxml::get_state('outtext')+1);
       if ($nesting > 1 && $env{'request.state'} eq 'construct') {
    &Apache::lonxml::error("Nesting of &lt;startouttext /&gt; not allowed, on line ".$token->[5]);
       }
     return (@result);      return (@result);
 }  }
   
Line 1763  sub start_endouttext { Line 1793  sub start_endouttext {
  $result='<endouttext />'.   $result='<endouttext />'.
     &Apache::edit::handle_insertafter('startouttext');      &Apache::edit::handle_insertafter('startouttext');
     }      }
   
       my $nesting = 
    &Apache::lonxml::set_state('outtext',
      &Apache::lonxml::get_state('outtext')-1);
       if ($nesting < 0 && $env{'request.state'} eq 'construct') {
    &Apache::lonxml::error(" Extraneous &lt;endouttext /&gt; not allowed on line ".$token->[5]);
    &Apache::lonxml::set_state('outtext', 0);
       }
     return $result;      return $result;
 }  }
   

Removed from v.1.399  
changed lines
  Added in v.1.404


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