version 1.433, 2008/10/24 16:22:54
|
version 1.436, 2008/11/28 14:37:01
|
Line 27
|
Line 27
|
# |
# |
### |
### |
|
|
|
=pod |
|
|
|
=head1 NAME |
|
|
|
Apache::structuretags |
|
|
|
=head1 SYNOPSIS |
|
|
|
|
|
This is part of the LearningOnline Network with CAPA project |
|
described at http://www.lon-capa.org. |
|
|
|
|
|
=head1 NOTABLE SUBROUTINES |
|
|
|
=over |
|
|
|
=item |
|
|
|
=back |
|
|
|
=cut |
|
|
|
|
package Apache::structuretags; |
package Apache::structuretags; |
|
|
Line 36 use Apache::File();
|
Line 59 use Apache::File();
|
use Apache::lonmenu; |
use Apache::lonmenu; |
use Apache::lonlocal; |
use Apache::lonlocal; |
use Apache::lonxml; |
use Apache::lonxml; |
|
use Apache::londefdef; |
use Apache::lonenc(); |
use Apache::lonenc(); |
use Time::HiRes qw( gettimeofday tv_interval ); |
use Time::HiRes qw( gettimeofday tv_interval ); |
use lib '/home/httpd/lib/perl/'; |
use lib '/home/httpd/lib/perl/'; |
Line 74 sub start_tex {
|
Line 98 sub start_tex {
|
if ($target ne 'edit' && $target ne 'modified') { |
if ($target ne 'edit' && $target ne 'modified') { |
my $bodytext=&Apache::lonxml::get_all_text("/tex",$parser,$style); |
my $bodytext=&Apache::lonxml::get_all_text("/tex",$parser,$style); |
if ($target eq 'tex') { |
if ($target eq 'tex') { |
|
|
|
# If inside a table, occurrences of \\ must be removed; |
|
# else the table blows up. |
|
|
|
if (&Apache::londefdef::is_inside_of($tagstack, "table")) { |
|
$bodytext =~ s/\\\\//g; |
|
} |
return $bodytext.'{}'; |
return $bodytext.'{}'; |
} |
} |
} elsif ($target eq "edit" ) { |
} elsif ($target eq "edit" ) { |
Line 148 sub page_start {
|
Line 179 sub page_start {
|
|
|
$extra_head .= &homework_js(); |
$extra_head .= &homework_js(); |
|
|
unless ($env{'environment.wysiwygeditor'} eq 'on') { |
if ($env{'environment.wysiwygeditor'} eq 'on') { |
$extra_head .= &Apache::lonhtmlcommon::dragmath_js(); |
$extra_head .= &Apache::lonhtmlcommon::dragmath_js("FCKEditMathPopup"); |
|
} else { |
|
$extra_head .= &Apache::lonhtmlcommon::dragmath_js("EditMathPopup"); |
} |
} |
|
|
my %body_args; |
my %body_args; |
Line 541 sub initialize_storage {
|
Line 574 sub initialize_storage {
|
if ($temp =~ m/^error:.*/) { %Apache::lonhomework::history=(); } |
if ($temp =~ m/^error:.*/) { %Apache::lonhomework::history=(); } |
} |
} |
|
|
# -------------------------------------------------------------finalize_storage |
=pod |
# Stores away the result has to a student's environment |
|
# checks form.grade_ for specific values, other wises stores |
=item finalize_storage() |
# to the running users environment |
|
# Will increment totals for attempts, students, and corrects |
Stores away the result has to a student's environment |
# if running user has student role. |
checks form.grade_ for specific values, other wises stores |
|
to the running users environment |
|
Will increment totals for attempts, students, and corrects |
|
if running user has student role. |
|
|
|
=cut |
|
|
|
|
sub finalize_storage { |
sub finalize_storage { |
my ($given_symb) = @_; |
my ($given_symb) = @_; |
my $result; |
my $result; |
Line 577 sub finalize_storage {
|
Line 617 sub finalize_storage {
|
return $result; |
return $result; |
} |
} |
|
|
# -------------------------------------------------------------store_aggregates |
=pod |
# Sends hash of values to be incremented in nohist_resourcetracker.db |
|
# for the course. Increments total number of attempts, unique students |
item store_aggregates() |
# and corrects for each part for an instance of a problem, as appropriate. |
|
|
Sends hash of values to be incremented in nohist_resourcetracker.db |
|
for the course. Increments total number of attempts, unique students |
|
and corrects for each part for an instance of a problem, as appropriate. |
|
|
|
=cut |
|
|
sub store_aggregates { |
sub store_aggregates { |
my ($symb,$courseid) = @_; |
my ($symb,$courseid) = @_; |
my %aggregate; |
my %aggregate; |
Line 1285 sub start_languageblock {
|
Line 1331 sub start_languageblock {
|
$target eq 'tex' || $target eq 'analyze' || $target eq 'webgrade') { |
$target eq 'tex' || $target eq 'analyze' || $target eq 'webgrade') { |
my $include = $token->[2]->{'include'}; |
my $include = $token->[2]->{'include'}; |
my $exclude = $token->[2]->{'exclude'}; |
my $exclude = $token->[2]->{'exclude'}; |
my @preferred_languages=&Apache::loncommon::preferred_languages(); |
my @preferred_languages=&Apache::lonlocal::preferred_languages(); |
# This should not even happen, since we should at least have the server language |
# This should not even happen, since we should at least have the server language |
if (!$preferred_languages[0]) { $preferred_languages[0]='en'; } |
if (!$preferred_languages[0]) { $preferred_languages[0]='en'; } |
# Now loop over all languages in order of preference |
# Now loop over all languages in order of preference |
Line 1896 sub end_startouttext {
|
Line 1942 sub end_startouttext {
|
if ($target eq 'edit') { |
if ($target eq 'edit') { |
my $areaid = 'homework_edit_'.$Apache::lonxml::curdepth; |
my $areaid = 'homework_edit_'.$Apache::lonxml::curdepth; |
$text=&Apache::lonxml::get_all_text("endouttext",$parser,$style); |
$text=&Apache::lonxml::get_all_text("endouttext",$parser,$style); |
$result.=&Apache::edit::start_table($token)."<tr><td>".&mt('Text Block')."</td>" |
|
.'<td><span clas="LC_nobreak">'.&mt('Delete?').' ' |
$result.=&Apache::edit::start_table($token)."<tr><td>".&mt('Text Block')."</td> |
.&Apache::edit::deletelist($target,$token) |
<td>".&mt('Delete:'). |
.'</span></td>'; |
&Apache::edit::deletelist($target,$token) |
|
."</td>"; |
unless ($env{'environment.wysiwygeditor'} eq 'on') { |
unless ($env{'environment.wysiwygeditor'} eq 'on') { |
$result.='<td align="left">' |
$result .= '<td align="left">' |
.&Apache::lonhtmlcommon::dragmath_button($areaid,1) |
.&Apache::lonhtmlcommon::dragmath_button($areaid,1) |
.'</td>' |
.'</td>' |
.'<td>' |
.'<td>' |
.&Apache::edit::insertlist($target,$token) |
.&Apache::edit::insertlist($target,$token) |
.'</td>'; |
.'</td>'; |
} |
} |
$result.='<td align="right" valign="top">' . |
$result.='<td align="right" valign="top">' . |
&Apache::loncommon::helpLatexCheatsheet(). |
&Apache::loncommon::helpLatexCheatsheet(). |
&Apache::edit::end_row(). |
&Apache::edit::end_row(). |
&Apache::edit::start_spanning_row()."\n". |
&Apache::edit::start_spanning_row()."\n". |
&Apache::edit::editfield($token->[1],$text,"",80,8,1); |
&Apache::edit::editfield($token->[1],$text,"",80,8,1); |
Line 1991 sub practice_problem_header {
|
Line 2038 sub practice_problem_header {
|
|
|
1; |
1; |
__END__ |
__END__ |
|
|
|
=pod |
|
|
|
=back |
|
|
|
=cut |