version 1.497.2.6, 2011/12/27 19:48:31
|
version 1.504, 2012/04/11 11:40:00
|
Line 990 sub firstaccess_msg {
|
Line 990 sub firstaccess_msg {
|
my $foldertitle=&Apache::lonnet::gettitle($map); |
my $foldertitle=&Apache::lonnet::gettitle($map); |
|
|
&Apache::lonxml::debug("map is $map title is $foldertitle"); |
&Apache::lonxml::debug("map is $map title is $foldertitle"); |
$result .= "<h2>".&mt('The resources in "[_1]" are open for a limited time.' |
$result .= "<h2>".&mt('The resources in "[_1]" are open for a limited time.',$foldertitle)."</h2>" |
.' Once you click the "Show Resource" button below you have [_2] to complete all resources "[_1]".' |
.'<p>'.&mt('Once you click the "Show Resource" button below you have [_2] to complete all resources "[_1]".' |
,$foldertitle,$time)."</h2>"; |
,$foldertitle,$time)."</p>"; |
} elsif ($interval[1] eq 'course') { |
} elsif ($interval[1] eq 'course') { |
my $course = $env{'course.'.$env{'request.course.id'}.'.description'}; |
my $course = $env{'course.'.$env{'request.course.id'}.'.description'}; |
$result .= "<h2>".&mt('The resources in "[_1]" are open for a limited time.' |
$result .= "<h2>".&mt('The resources in "[_1]" are open for a limited time.',$course)."</h2>" |
.' Once you click the "Show Resource" button below you have [_2] to complete all resources "[_1]".' |
.'<p>'.&mt('Once you click the "Show Resource" button below you have [_2] to omplete all resources "[_1]".' |
,$course,$time)."</h2>"; |
,$course,$time)."</p>"; |
} else { |
} else { |
my $title=&Apache::lonnet::gettitle($symb); |
my $title=&Apache::lonnet::gettitle($symb); |
$result .= "<h2>".&mt('This resource "[_1]" is open for a limited time.' |
$result .= "<h2>".&mt('This resource "[_1]" is open for a limited time.',$title)."</h2>" |
.' Once you click the "Show Resource" button below you have [_2] to complete this resource "[_1]".' |
.'<p>'.&mt('Once you click the "Show Resource" button below you have [_2] to complete this resource "[_1]".' |
,$title,$time)."</h2>"; |
,$title,$time)."</p>"; |
} |
} |
my $uri = &Apache::lonenc::check_encrypt($env{'request.uri'}); |
my $uri = &Apache::lonenc::check_encrypt($env{'request.uri'}); |
my $buttontext = &mt('Show Resource'); |
my $buttontext = &mt('Show Resource'); |
Line 1060 sub reset_problem_globals {
|
Line 1060 sub reset_problem_globals {
|
undef(%Apache::lonhomework::history); |
undef(%Apache::lonhomework::history); |
undef(%Apache::lonhomework::results); |
undef(%Apache::lonhomework::results); |
undef($Apache::inputtags::part); |
undef($Apache::inputtags::part); |
|
if ($type eq 'Task') { |
|
undef($Apache::inputtags::slot_name); |
|
} |
#don't undef this, lonhomework.pm takes care of this, we use this to |
#don't undef this, lonhomework.pm takes care of this, we use this to |
#detect if we try to do 2 problems in one file |
#detect if we try to do 2 problems in one file |
# undef($Apache::lonhomework::parsing_a_problem); |
# undef($Apache::lonhomework::parsing_a_problem); |
Line 1176 sub start_problem {
|
Line 1179 sub start_problem {
|
my @interval=&Apache::lonnet::EXT("resource.0.interval"); |
my @interval=&Apache::lonnet::EXT("resource.0.interval"); |
&Apache::lonnet::set_first_access($interval[1]); |
&Apache::lonnet::set_first_access($interval[1]); |
} |
} |
|
my $resource_due = &Apache::lonhomework::due_date(0, $env{'request.symb'}); |
|
my $time_left = $resource_due - time(); |
|
if ($resource_due && ($time_left > 0) && ($target eq 'web')) { |
|
$result .= &Apache::lonhtmlcommon::set_due_date($resource_due); |
|
} |
|
|
|
|
($status,$accessmsg,my $slot_name,my $slot) = |
($status,$accessmsg,my $slot_name,my $slot) = |
&Apache::lonhomework::check_slot_access('0','problem'); |
&Apache::lonhomework::check_slot_access('0','problem'); |
push (@Apache::inputtags::status,$status); |
push (@Apache::inputtags::status,$status); |
Line 1229 sub start_problem {
|
Line 1238 sub start_problem {
|
( $status eq 'BANNED') || |
( $status eq 'BANNED') || |
( $status eq 'UNAVAILABLE') || |
( $status eq 'UNAVAILABLE') || |
( $status eq 'NOT_IN_A_SLOT') || |
( $status eq 'NOT_IN_A_SLOT') || |
|
( $status eq 'NOTRESERVABLE') || |
|
( $status eq 'RESERVABLE') || |
|
( $status eq 'RESERVABLE_LATER') || |
( $status eq 'INVALID_ACCESS')) { |
( $status eq 'INVALID_ACCESS')) { |
my $bodytext=&Apache::lonxml::get_all_text("/problem",$parser, |
my $bodytext=&Apache::lonxml::get_all_text("/problem",$parser, |
$style); |
$style); |
if ( $target eq "web" ) { |
if ( $target eq "web" ) { |
my $msg; |
my $msg; |
if ($status eq 'UNAVAILABLE') { |
if ($status eq 'UNAVAILABLE') { |
$msg.='<h1>'.&mt('Unable to determine if this resource is open due to network problems. Please try again later.').'</h1>'; |
$msg.='<p class="LC_error">'.&mt('Unable to determine if this resource is open due to network problems. Please try again later.').'</p>'; |
} elsif ($status eq 'NOT_IN_A_SLOT') { |
} elsif ($status eq 'NOT_IN_A_SLOT') { |
$msg.='<h1>'.&mt('You are not currently signed up to work at this time and/or place.').'</h1>'; |
$msg.='<p class="LC_warning">'.&mt('You are not currently signed up to work at this time and/or place.').'</p>'; |
|
} elsif (($status eq 'RESERVABLE') || ($status eq 'RESERVABLE_LATER') || |
|
($status eq 'NOTRESERVABLE')) { |
|
$msg.='<p class="LC_warning">'.&mt('Access requires reservation to work at specific time/place.').'</p>'; |
} elsif ($status ne 'NOT_YET_VIEWED') { |
} elsif ($status ne 'NOT_YET_VIEWED') { |
$msg.='<h1>'.&mt('Not open to be viewed').'</h1>'; |
$msg.='<p class="LC_warning">'.&mt('Not open to be viewed').'</p>'; |
} |
} |
if ($status eq 'CLOSED' || $status eq 'INVALID_ACCESS') { |
if ($status eq 'CLOSED' || $status eq 'INVALID_ACCESS') { |
$msg.=&mt('The problem ').$accessmsg; |
$msg.=&mt('The problem ').$accessmsg; |
} elsif ($status eq 'UNCHECKEDOUT') { |
} elsif ($status eq 'UNCHECKEDOUT') { |
Line 1249 sub start_problem {
|
Line 1264 sub start_problem {
|
$msg.=&firstaccess_msg($accessmsg,$symb); |
$msg.=&firstaccess_msg($accessmsg,$symb); |
} elsif ($status eq 'NOT_IN_A_SLOT') { |
} elsif ($status eq 'NOT_IN_A_SLOT') { |
$msg.=&Apache::bridgetask::add_request_another_attempt_button("Sign up for time to work"); |
$msg.=&Apache::bridgetask::add_request_another_attempt_button("Sign up for time to work"); |
|
} elsif ($status eq 'RESERVABLE') { |
|
$msg.=&mt('Available to make a reservation.').' '.&mt('Reservation window closes [_1].', |
|
&Apache::lonnavmaps::timeToHumanString($accessmsg,'end')). |
|
'<br />'. |
|
&Apache::bridgetask::add_request_another_attempt_button("Sign up for time to work"); |
|
} elsif ($status eq 'RESERVABLE_LATER') { |
|
$msg.=&mt('Window to make a reservation will open [_1].', |
|
&Apache::lonnavmaps::timeToHumanString($accessmsg,'start')); |
|
} elsif ($status eq 'NOTRESERVABLE') { |
|
$msg.=&mt('Not available to make a reservation.'); |
} |
} |
$result.=$msg.'<br />'; |
$result.=$msg.'<br />'; |
} elsif ($target eq 'tex') { |
} elsif ($target eq 'tex') { |
Line 1516 sub end_problem {
|
Line 1541 sub end_problem {
|
|
|
&reset_problem_globals('problem'); |
&reset_problem_globals('problem'); |
|
|
|
# |
|
# This shouild be just above the return so that the |
|
# time put in the javascript is as late as possible in the |
|
# computation: |
|
# |
|
if ($target eq 'web') { |
|
$result .= &Apache::lonhtmlcommon::set_compute_end_time(); |
|
} |
return $result; |
return $result; |
} |
} |
|
|
Line 1824 sub end_languageblock {
|
Line 1857 sub end_languageblock {
|
$result = &select_hyphenation($which); |
$result = &select_hyphenation($which); |
} |
} |
$result .= $available_texts{$which}; |
$result .= $available_texts{$which}; |
$result .= &select_metadata_hyphenation(); # Restore original language. |
if ($target eq 'tex') { |
|
$result .= &select_metadata_hyphenation(); # Restore original language. |
|
} |
} |
} |
undef(%available_texts); |
undef(%available_texts); |
&Apache::lonxml::deregister('Apache::structuretags',('lang')); |
&Apache::lonxml::deregister('Apache::structuretags',('lang')); |