--- loncom/homework/structuretags.pm 2010/12/18 22:49:33 1.479 +++ loncom/homework/structuretags.pm 2011/07/21 09:18:40 1.491 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # definition of tags that give a structure to a document # -# $Id: structuretags.pm,v 1.479 2010/12/18 22:49:33 raeburn Exp $ +# $Id: structuretags.pm,v 1.491 2011/07/21 09:18:40 christianto Exp $ # # Copyright Michigan State University Board of Trustees # @@ -128,6 +128,7 @@ sub homework_js { &setmode_javascript(). <<'JS'; JS } @@ -153,49 +154,55 @@ JS sub setmode_javascript { return <<"ENDSCRIPT"; ENDSCRIPT } sub file_delchk_js { - my $delfilewarn = &mt('You have indicated you wish to delete some files previously included for submission.').'\\n'. - &mt('Deleted files will not be graded.').' '. - &mt('Submit Answer?'); + my $delfilewarn = &mt('You have indicated you wish to remove some files previously included in your submission.').'\\n'. + &mt('Continue submission with these files removed?'); return <<"ENDSCRIPT"; ENDSCRIPT } @@ -393,6 +400,7 @@ sub setup_rndseed { if ($tries) { $rndseed += $tries; } + $env{'form.'.$Apache::inputtags::part.'.rndseed'}=$rndseed; } if ( ($env{'form.resetdata'} eq &mt('New Problem Variation') && $env{'form.submitted'} eq 'yes') || @@ -403,8 +411,14 @@ sub setup_rndseed { delete($env{'form.resetdata'}); delete($env{'form.newrandomization'}); } - if (defined($rndseed) && $rndseed ne int($rndseed)) { - $rndseed=join(':',&Apache::lonnet::digest($rndseed)); + $rndseed=~s/\,/\:/g; + $rndseed=~s/[^\w\d\:\-]//g; + if (defined($rndseed)) { + my ($c1,$c2)=split(/\:/,$rndseed); + unless ($c2) { $c2=0; } + unless (($c1==int($c1)) && ($c2==int($c2))) { + $rndseed=join(':',&Apache::lonnet::digest($rndseed)); + } } if ($Apache::lonhomework::history{'resource.CODE'}) { $rndseed=&Apache::lonnet::rndseed(); @@ -456,27 +470,48 @@ sub remember_problem_state { '; } +sub problem_edit_action_button { + my ($name,$action,$accesskey,$text,$flag)=@_; + my $actionscript="setmode(this.form,'$action')"; + return "\n"; +} + sub problem_edit_buttons { - return ' -