Diff for /loncom/homework/inputtags.pm between versions 1.45 and 1.52

version 1.45, 2001/10/03 12:48:47 version 1.52, 2002/01/30 17:32:42
Line 1 Line 1
 # The LearningOnline Network with CAPA  # The LearningOnline Network with CAPA
 # input  definitons  # input  definitons
   #
   # $Id$
   #
   # Copyright Michigan State University Board of Trustees
   #
   # This file is part of the LearningOnline Network with CAPA (LON-CAPA).
   #
   # LON-CAPA is free software; you can redistribute it and/or modify
   # it under the terms of the GNU General Public License as published by
   # the Free Software Foundation; either version 2 of the License, or
   # (at your option) any later version.
   #
   # LON-CAPA is distributed in the hope that it will be useful,
   # but WITHOUT ANY WARRANTY; without even the implied warranty of
   # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   # GNU General Public License for more details.
   #
   # You should have received a copy of the GNU General Public License
   # along with LON-CAPA; if not, write to the Free Software
   # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
   #
   # /home/httpd/html/adm/gpl.txt
   #
   # http://www.lon-capa.org/
   #
 # 2/19 Guy   # 2/19 Guy 
   
 package Apache::inputtags;  package Apache::inputtags;
 use strict;  use strict;
   
 sub BEGIN {  BEGIN {
   &Apache::lonxml::register('Apache::inputtags',('textarea','textline','datasubmission'));    &Apache::lonxml::register('Apache::inputtags',('textfield','textline','datasubmission'));
 }  }
   
   
Line 23  sub initialize_inputtags { Line 48  sub initialize_inputtags {
   @Apache::inputtags::previous=();    @Apache::inputtags::previous=();
   # id of current part, 0 means that no part is current (inside <problem> only    # id of current part, 0 means that no part is current (inside <problem> only
   $Apache::inputtags::part='';    $Apache::inputtags::part='';
   # list of problem date statuses, the first element is for <problem>     # list of problem date statuses, the first element is for <problem>
   #if there is a second element it is for the current <part>    # if there is a second element it is for the current <part>
   @Apache::inputtags::status=();    @Apache::inputtags::status=();
   #hash of defined params for the current response    # hash of defined params for the current response
   %Apache::inputtags::params=();    %Apache::inputtags::params=();
     # list of all ids, for <import>, these get join()ed and prepended
     @Apache::inputtags::import=();
 }  }
   
 sub start_input {  sub start_input {
Line 44  sub end_input { Line 71  sub end_input {
   return '';    return '';
 }  }
   
 sub start_textarea {  sub start_textfield {
   my ($target,$token,$tagstack,$parstack,$parser,$safeeval)=@_;    my ($target,$token,$tagstack,$parstack,$parser,$safeeval)=@_;
   my $result = "";    my $result = "";
   my $id = &start_input($parstack,$safeeval);    my $id = &start_input($parstack,$safeeval);
Line 62  sub start_textarea { Line 89  sub start_textarea {
     }      }
     if ($oldresponse ne '') {      if ($oldresponse ne '') {
       #get rid of any startup text if the user has already responded        #get rid of any startup text if the user has already responded
       &Apache::lonxml::get_all_text("/textarea",$$parser[$#$parser]);        &Apache::lonxml::get_all_text("/textfield",$$parser[-1]);
       }
     }
     if ($target eq 'grade') {
       my $seedtext=&Apache::lonxml::get_all_text("/textfield",$$parser[-1]);
       if ($seedtext eq $ENV{'form.HWVAL'.$Apache::inputtags::response[-1]}) {
         # if the seed text is still there it wasn't a real submission
         $ENV{'form.HWVAL'.$Apache::inputtags::response['-1']}='';
     }      }
   }    }
   return $result;    return $result;
 }  }
   
 sub end_textarea {  sub end_textfield {
   my ($target,$token,$tagstack,$parstack,$parser,$safeeval)=@_;    my ($target,$token,$tagstack,$parstack,$parser,$safeeval)=@_;
   if ($target eq 'web') {    if ($target eq 'web') {
     if ($Apache::inputtags::status[-1] eq 'CAN_ANSWER') {      if ($Apache::inputtags::status[-1] eq 'CAN_ANSWER') {
Line 96  sub start_textline { Line 130  sub start_textline {
       $result='<i>'.$oldresponse.'</i>';        $result='<i>'.$oldresponse.'</i>';
     }      }
   } elsif ($target eq 'edit') {    } elsif ($target eq 'edit') {
     $result=&Apache::edit::tag_start($target,$token,      $result=&Apache::edit::tag_start($target,$token);
      &Apache::lonxml::description($token));  
     $result.=&Apache::edit::text_arg('Size:','size',$token,'5')."</td></tr>";      $result.=&Apache::edit::text_arg('Size:','size',$token,'5')."</td></tr>";
     $result.=&Apache::edit::end_table;      $result.=&Apache::edit::end_table;
   } elsif ($target eq 'modified') {    } elsif ($target eq 'modified') {
Line 375  sub gradestatus { Line 408  sub gradestatus {
     }      }
     if ( $status eq 'SHOW_ANSWER' || $status eq 'CANNOT_ANSWER') {$showbutton = 0;}      if ( $status eq 'SHOW_ANSWER' || $status eq 'CANNOT_ANSWER') {$showbutton = 0;}
     if ( $showbutton ) {       if ( $showbutton ) { 
       $button = '<br /><input type="submit" name="submit" value="Submit All Answers" />';        $button = '<br /><input type="submit" name="submit" value="Submit Answer" />';
     }      }
   }    }
   my $output= $previousmsg.$message.$trystr;    my $output= $previousmsg.$message.$trystr;

Removed from v.1.45  
changed lines
  Added in v.1.52


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