--- loncom/homework/structuretags.pm 2009/10/06 11:03:30 1.457.2.1
+++ loncom/homework/structuretags.pm 2010/08/09 23:39:50 1.461.2.1
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# definition of tags that give a structure to a document
#
-# $Id: structuretags.pm,v 1.457.2.1 2009/10/06 11:03:30 foxr Exp $
+# $Id: structuretags.pm,v 1.461.2.1 2010/08/09 23:39:50 raeburn Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -218,13 +218,15 @@ sub page_start {
'text' => 'Construction Space',
'href' => &Apache::loncommon::authorspace(),
});
+ # breadcrumbs (and tools) will be created
+ # in start_page->bodytag->innerregister
+
# FIXME Where are we?
# &Apache::lonhtmlcommon::add_breadcrumb({
# 'text' => 'Problem Editing', # 'Problem Testing'
# 'href' => '',
# });
- $pageheader = &Apache::lonhtmlcommon::breadcrumbs()
- .&Apache::loncommon::head_subbox(
+ $pageheader =&Apache::loncommon::head_subbox(
&Apache::loncommon::CSTR_pageheader());
}
} elsif (!defined($found{'body'})) {
@@ -252,15 +254,18 @@ sub page_start {
my $page_start = &Apache::loncommon::start_page($name,$extra_head,
\%body_args);
$page_start .= $pageheader;
- if (!defined($found{'body'})
- && $env{'request.state'} ne 'construct'
- && ($target eq 'web' || $target eq 'webgrade')) {
-
- my ($symb,undef,undef,undef,$publicuser)= &Apache::lonnet::whichuser();
- if ($symb eq '' && !$publicuser) {
- $page_start .= '
'
- .&mt('Browsing resource, all submissions are temporary.')
- .'
';
+
+ unless ($env{'request.gcicontext'} eq 'buildtest') {
+ if (!defined($found{'body'})
+ && $env{'request.state'} ne 'construct'
+ && ($target eq 'web' || $target eq 'webgrade')) {
+
+ my ($symb,undef,undef,undef,$publicuser)= &Apache::lonnet::whichuser();
+ if ($symb eq '' && !$publicuser) {
+ $page_start .= ''
+ .&mt('Browsing resource, all submissions are temporary.')
+ .'
';
+ }
}
}
@@ -387,11 +392,11 @@ sub problem_edit_header {
'.&mt('Problem Editing').&Apache::loncommon::help_open_menu('Problem Editing','Problem_Editor_XML_Index',5,'Authoring').'
'.
&problem_edit_buttons().'
-
+
'.&Apache::lonxml::message_location().'
'.
- '';
+ '';
}
sub problem_edit_footer {
@@ -399,7 +404,7 @@ sub problem_edit_footer {
'.
@@ -649,7 +654,11 @@ item store_aggregates()
sub store_aggregates {
my ($symb,$courseid) = @_;
- my %aggregate;
+ my (%aggregate,%subtracker);
+ my $tracksub;
+ if ($symb =~ m{^uploaded/gcitest/$LONCAPA::match_courseid/default_1261144274.sequence___\d+___gci/gci/}) {
+ $tracksub = 1;
+ }
my @parts;
my $cdomain = $env{'course.'.$env{'request.course.id'}.'.domain'};
my $cname = $env{'course.'.$env{'request.course.id'}.'.num'};
@@ -664,6 +673,9 @@ sub store_aggregates {
$Apache::lonhomework::results{'resource.'.$part.'.award'}
eq 'EXACT_ANS') {
$aggregate{$symb."\0".$part."\0correct"} = 1;
+ if ($tracksub) {
+ $subtracker{$env{'user.name'}.':'.$env{'user.domain'}."\0correct"} ++;
+ }
}
if ($Apache::lonhomework::results{'resource.'.$part.'.tries'} == 1) {
$aggregate{$symb."\0".$part."\0users"} = 1;
@@ -676,11 +688,22 @@ sub store_aggregates {
}
}
$aggregate{$symb."\0".$part."\0attempts"} = 1;
+ if ($tracksub) {
+ if ($Apache::lonhomework::type eq 'survey') {
+ $subtracker{$env{'user.name'}.':'.$env{'user.domain'}."\0surveysubs"} ++;
+ } else {
+ $subtracker{$env{'user.name'}.':'.$env{'user.domain'}."\0attempts"} ++;
+ }
+ }
}
if (keys (%aggregate) > 0) {
&Apache::lonnet::cinc('nohist_resourcetracker',\%aggregate,
$cdomain,$cname);
}
+ if (keys(%subtracker) > 0) {
+ &Apache::lonnet::cinc('nohist_submissiontracker',\%subtracker,
+ $cdomain,$cname);
+ }
}
sub checkout_msg {
@@ -886,7 +909,7 @@ sub start_problem {
$name);
}
-#TESTTESTTEST if ($target eq 'tex' and $env{'request.symb'} =~ m/\.page_/) {$result='';}
+ if ($target eq 'tex' and $env{'request.symb'} =~ m/\.page_/) {$result='';}
if ($target eq 'analyze') { my $rndseed=&setup_rndseed($safeeval); }
if ($target eq 'web' || $target eq 'grade' || $target eq 'answer' ||
@@ -912,28 +935,34 @@ sub start_problem {
if ($env{'request.state'} ne "construct" &&
($symb eq '' || $Apache::lonhomework::type eq 'practice')) {
$form_tag_start.=''.
- '';
+ $rndseed.'" />';
+ unless ($env{'request.gcicontext'} eq 'buildtest') {
+ $form_tag_start .= '';
+ }
if (exists($env{'form.username'})) {
$form_tag_start.=
'';
}
- if ($env{'request.role.adv'}) {
- $form_tag_start.= ' ';
- }
+ unless ($env{'request.gcicontext'} eq 'buildtest') {
+ if ($env{'request.role.adv'}) {
+ $form_tag_start.= ' ';
+ }
+ }
if ($Apache::lonhomework::type eq 'practice') {
$form_tag_start.=&practice_problem_header();
}
- $form_tag_start.=' ';
+ unless ($env{'request.gcicontext'} eq 'buildtest') {
+ $form_tag_start.=' ';
+ }
}
($status,$accessmsg,my $slot_name,my $slot) =
|
|