--- loncom/homework/structuretags.pm 2008/05/27 22:25:56 1.421
+++ loncom/homework/structuretags.pm 2008/08/26 03:18:29 1.429
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# definition of tags that give a structure to a document
#
-# $Id: structuretags.pm,v 1.421 2008/05/27 22:25:56 www Exp $
+# $Id: structuretags.pm,v 1.429 2008/08/26 03:18:29 raeburn Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -148,6 +148,10 @@ sub page_start {
$extra_head .= &homework_js();
+ unless ($env{'environment.wysiwygeditor'} eq 'on') {
+ $extra_head .= &Apache::lonhtmlcommon::dragmath_js();
+ }
+
my %body_args;
if (defined($found{'html'})) {
$body_args{'skip_phases'}{'head'}=1;
@@ -312,24 +316,28 @@ sub remember_problem_state {
';
}
-sub problem_edit_header {
- return ''.
- &Apache::structuretags::remember_problem_state().'
-
';
+}
+
+sub problem_edit_header {
+ return ''.
+ &Apache::structuretags::remember_problem_state().'
+
@@ -340,17 +348,8 @@ sub problem_edit_header {
sub problem_edit_footer {
return '
'.
@@ -417,8 +416,9 @@ sub problem_web_to_edit_header {
$show_all
@@ -451,33 +451,15 @@ $show_all
$show_all
";
}
- my %langchoices=('' => '');
- foreach (&Apache::loncommon::languageids()) {
- if (&Apache::loncommon::supportedlanguagecode($_)) {
- $langchoices{&Apache::loncommon::supportedlanguagecode($_)}
- = &Apache::loncommon::plainlanguagedescription($_);
- }
- }
$result.='
'.&mt('Apply style file: ').'
&').'" />
'.&mt('Select').'
-
+
@@ -884,8 +866,7 @@ sub start_problem {
'';
}
if ($Apache::lonhomework::type eq 'practice') {
- $form_tag_start.=''.&mt('Practice Problem').'
'.
- ''.&mt('Submissions are not permanently recorded').'';
+ $form_tag_start.=&practice_problem_header();
}
$form_tag_start.='
';
}
@@ -959,6 +940,11 @@ sub start_problem {
# create a page header and exit
if ($env{'request.state'} eq "construct") {
$result.= &problem_web_to_edit_header($env{'form.rndseed'});
+ if ($Apache::lonhomework::type eq 'practice') {
+ $result.= ''.
+ &practice_problem_header().'
';
+ }
}
# if we are viewing someone else preserve that info
if (defined $env{'form.grade_symb'}) {
@@ -1194,6 +1180,11 @@ sub start_library {
$result.=" \n $form_tag_start".
'';
$result.=&problem_web_to_edit_header($rndseed);
+ if ($Apache::lonhomework::type eq 'practice') {
+ $result.= ''.
+ &practice_problem_header().'
';
+ }
}
return $result;
}
@@ -1401,7 +1392,11 @@ sub end_languageblock {
my $result = &Apache::lonxml::endredirection();
my $which = &Apache::lonxml::get_param('which',$parstack,
$safeeval);
- $available_texts{$which} = $result;
+ foreach my $language (split(/\s*\,\s*/,$which)) {
+ unless ($language=~/\w/) { next; }
+ $available_texts{$language} = $result;
+ }
+
}
return '';
}
@@ -1858,7 +1853,8 @@ sub start_problemtype {
$result .=&Apache::edit::checked_arg('When used as type(s):','for',
[ ['exam','Exam/Quiz Problem'],
['survey','Survey'],
- ['problem','Homework Problem'] ]
+ ['problem','Homework Problem'],
+ ['practice','Practice Problem'] ]
,$token);
$result .=&Apache::edit::end_row().&Apache::edit::start_spanning_row();
} elsif ($target eq 'modified') {
@@ -1891,16 +1887,22 @@ sub end_startouttext {
my ($target,$token,$tagstack,$parstack,$parser,$safeeval,$style)=@_;
my $result='';
my $text='';
-
if ($target eq 'edit') {
+ my $areaid = 'homework_edit_'.$Apache::lonxml::curdepth;
$text=&Apache::lonxml::get_all_text("endouttext",$parser,$style);
$result.=&Apache::edit::start_table($token)."".&mt('Text Block')." |
".&mt('Delete:').
&Apache::edit::deletelist($target,$token)
- ." |
-".
- &Apache::edit::insertlist($target,$token).
- ' | ' .
+ ." | ";
+ unless ($env{'environment.wysiwygeditor'} eq 'on') {
+ $result.=''
+ .&Apache::lonhtmlcommon::dragmath_button($areaid,1)
+ .' | '
+ .''
+ .&Apache::edit::insertlist($target,$token)
+ .' | ';
+ }
+ $result.='' .
&Apache::loncommon::helpLatexCheatsheet().
&Apache::edit::end_row().
&Apache::edit::start_spanning_row()."\n".
@@ -1975,5 +1977,11 @@ sub end_simpleeditbutton {
return '';
}
+sub practice_problem_header {
+ return ''.&mt('Practice Problem').''.
+ ''.&mt('Submissions are not permanently recorded').
+ '';
+}
+
1;
__END__
|