--- loncom/interface/loncoursequeueadmin.pm 2009/12/07 02:04:25 1.12.2.1 +++ loncom/interface/loncoursequeueadmin.pm 2010/01/07 17:07:45 1.12.2.4 @@ -1,7 +1,7 @@ # The LearningOnline Network # Utilities to administer domain course requests and course self-enroll requests # -# $Id: loncoursequeueadmin.pm,v 1.12.2.1 2009/12/07 02:04:25 raeburn Exp $ +# $Id: loncoursequeueadmin.pm,v 1.12.2.4 2010/01/07 17:07:45 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -456,7 +456,10 @@ sub update_request_queue { my $uhome = &Apache::lonnet::homeserver($uname,$udom); if ($uhome ne 'no_host') { if (exists($requesthash{$uname.':'.$udom})) { - + if ($cdom eq 'gci' && $cnum eq '9615072b469884921gcil1') { + my $enresult = &enable_gci_submission($udom,$uname, + $access_end,$access_start); + } if (exists($classlist->{$uname.':'.$udom})) { if (ref($classlist->{$uname.':'.$udom}) eq 'ARRAY') { if (($classlist->{$uname.':'.$udom}->[$idx->{'status'}] eq 'Active') || @@ -905,6 +908,23 @@ sub update_request_queue { return $output; } +sub enable_gci_submission { + my ($udom,$uname,$access_end,$access_start) = @_; + my $cdom = 'gci'; + my $cnum = '1H96711d710194bfegcil1'; + my ($stucounts,$idx,$classlist) = &get_student_counts($cdom,$cnum); + if (exists($classlist->{$uname.':'.$udom})) { + if (ref($classlist->{$uname.':'.$udom}) eq 'ARRAY') { + if (($classlist->{$uname.':'.$udom}->[$idx->{'status'}] eq 'Active') || + ($classlist->{$uname.':'.$udom}->[$idx->{'status'}] eq 'Future')) { + return; + } + } + } + return + &Apache::lonnet::modify_student_enrollment($udom,$uname,undef,undef,undef,undef,undef,undef,$access_end,$access_start,'selfenroll',undef,$cdom.'_'.$cnum,1); +} + sub get_student_counts { my ($cdom,$cnum) = @_; my (%idx,%stucounts); @@ -961,6 +981,9 @@ sub build_batchcreatehash { my ($dom,$context,$details,$owneremail,$domdefs) = @_; my %batchhash; my @items = qw{owner domain coursehome clonecrs clonedom datemode dateshift enrollstart enrollend accessstart accessend sections crosslists users}; + if ($dom eq 'gcitest') { + push(@items,'firstres'); + } if ((ref($details) eq 'HASH') && (ref($domdefs) eq 'HASH')) { my $emailenc = &Apache::lonnet::escape($owneremail); my $owner = $details->{'owner'}.':'.$details->{'domain'};