--- loncom/homework/response.pm 2007/06/20 22:36:52 1.172 +++ loncom/homework/response.pm 2007/09/25 20:18:56 1.177 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # various response type definitons response definition # -# $Id: response.pm,v 1.172 2007/06/20 22:36:52 foxr Exp $ +# $Id: response.pm,v 1.177 2007/09/25 20:18:56 albertel Exp $ # # Copyright Michigan State University Board of Trustees # @@ -569,15 +569,15 @@ sub implicit_multiplication { $expression=~s/(\d+)(?:x|\*)10(?:\^|\*\*)([\+\-]*\d+)/$1\&\($2\)/gsi; # Fill in multiplication signs # a b -> a*b;3 b -> 3*b;3 4 -> 3*4 - $expression=~s/(\w)\s+(\w)/$1\*$2/gs; + $expression=~s/([A-Za-z0-9])\s+(?=[A-Za-z0-9])/$1\*/gs; # )( -> )*(; ) ( -> )*( $expression=~s/\)\s*\(/\)\*\(/gs; # 3a -> 3*a; 3( -> 3*(; 3 ( -> 3*(; 3A -> 3*A $expression=~s/(\d)\s*([a-zA-Z\(])/$1\*$2/gs; # a ( -> a*( - $expression=~s/(\w)\s+\(/$1\*\(/gs; + $expression=~s/([A-Za-z0-9])\s+\(/$1\*\(/gs; # )a -> )*a; )3 -> )*3; ) 3 -> )*3 - $expression=~s/\)\s*(\w)/\)\*$1/gs; + $expression=~s/\)\s*([A-Za-z0-9])/\)\*$1/gs; # 3&8 -> 3e8; 3&-4 -> 3e-4 $expression=~s/(\d+)\&\(([\+\-]*\d+)\)/$1e$2/gs; return $expression; @@ -865,6 +865,7 @@ Optional Arguments: $lines lines of bubbles. $bubbles_per_line - Must be provided if lines is defined.. number of bubbles on a line. + =cut sub getresponse { @@ -1205,6 +1206,21 @@ sub check_status { return 2; } +=pod + +=item setup_prior_tries_hash($func,$data) + + Foreach each past .submission $func is called with 3 arguments + - the mode to set things up for (currently always 'grade') + - the stored .submission string + - The expansion of $data + + $data is an array ref containing elements that are either + - scalars that are other elements of the history hash to pass to $func + - ref to data to be passed untouched to $func + +=cut + sub setup_prior_tries_hash { my ($func,$data) = @_; my $part = $Apache::inputtags::part;