--- loncom/homework/functionplotresponse.pm 2011/11/24 15:43:08 1.87 +++ loncom/homework/functionplotresponse.pm 2011/12/26 01:48:10 1.91 @@ -1,7 +1,7 @@ # LearningOnline Network with CAPA # Functionplot responses # -# $Id: functionplotresponse.pm,v 1.87 2011/11/24 15:43:08 www Exp $ +# $Id: functionplotresponse.pm,v 1.91 2011/12/26 01:48:10 www Exp $ # # Copyright Michigan State University Board of Trustees # @@ -49,10 +49,14 @@ BEGIN { # sub geogebra_startcode { - my ($id)=@_; + my ($id,$width,$height)=@_; + $width=int(1.*$width); + $height=int(1.*$height); + unless ($width) { $width=700; } + unless ($height) { $height=400; } return (< + codebase="/adm/geogebra/" width="$width" height="$height" MAYSCRIPT> ENDSTARTCODE } @@ -1248,7 +1252,11 @@ sub start_functionplotresponse { .&Apache::edit::end_row() .&Apache::edit::start_spanning_row() ."\n"; - $result.=&Apache::edit::text_arg('Label x-axis:','xlabel', + $result.=&Apache::edit::text_arg('Width (pixels):','width', + $token,'6').' '. + &Apache::edit::text_arg('Height (pixels):','height', + $token,'6').'
'. + &Apache::edit::text_arg('Label x-axis:','xlabel', $token,'6').' '. &Apache::edit::text_arg('Minimum x-value:','xmin', $token,'4').' '. @@ -1271,7 +1279,7 @@ sub start_functionplotresponse { &Apache::edit::end_row().&Apache::edit::start_spanning_row(); } elsif ($target eq 'modified') { my $constructtag=&Apache::edit::get_new_args($token,$parstack, - $safeeval,'xlabel','xmin','xmax','ylabel','ymin','ymax', + $safeeval,'width','height','xlabel','xmin','xmax','ylabel','ymin','ymax', 'xaxisvisible','yaxisvisible','gridvisible','answerdisplay'); if ($constructtag) { $result = &Apache::edit::rebuild_tag($token); } @@ -1281,27 +1289,16 @@ sub start_functionplotresponse { ($env{'form.answer_output_mode'} ne 'tex') && ($Apache::lonhomework::viewgrades == 'F')) { my (undef,undef,$udom,$uname)=&Apache::lonnet::whichuser(); - my $windowopen=&Apache::lonhtmlcommon::javascript_docopen(); - my $start_page = &Apache::loncommon::start_page('Rules Log', undef, - {'only_body' => 1, - 'bgcolor' => '#FFFFFF', - 'js_ready' => 1,}); - my $end_page = &Apache::loncommon::end_page({'js_ready' => 1,}); $uname =~s/\W//g; $udom =~s/\W//g; my $function_name = join('_','LONCAPA_scriptvars',$uname,$udom, $env{'form.counter'},$Apache::lonxml::curdepth); - my $rules_var ="".&mt('Rules Log')."
"; - &Apache::lonxml::add_script_result($rules_var); - } - + &Apache::lonxml::add_script_result( + &Apache::loncommon::modal_adhoc_window($function_name,700,500, + '
'.$Apache::functionplotresponse::ruleslog.'
', + &mt('Rules Log'))."
"); + } return $result; } @@ -1672,7 +1669,7 @@ sub functionplotrulecheck { # # Evaluate the value # - if ($value=~/\D/) { + if (($value=~/\D/) && ($value ne 'undef')) { $Apache::functionplotresponse::fpr_xmin=$xmin; $Apache::functionplotresponse::fpr_xmax=$xmax; $value=&Apache::run::run($value,$safeeval); @@ -1986,7 +1983,9 @@ sub end_functionplotelements { # generate the input fields $result.=$Apache::functionplotresponse::inputfields; # actually start the -tag - $result.=&geogebra_startcode($internalid); + $result.=&geogebra_startcode($internalid, + &Apache::lonxml::get_param('width',$parstack,$safeeval,-2), + &Apache::lonxml::get_param('height',$parstack,$safeeval,-2)); # load the spline bytecode $result.=&geogebra_spline_program(); # set default parameters