version 1.176, 2008/11/18 19:14:22
|
version 1.179, 2012/04/24 21:05:15
|
Line 74 ENDHEAD
|
Line 74 ENDHEAD
|
|
|
=pod |
=pod |
|
|
=item modifystudent() |
|
|
|
Drop student from all sections of a course, except optional $csec |
|
|
|
=cut |
|
|
|
sub modifystudent { |
|
my ($udom,$unam,$courseid,$csec,$desiredhost)=@_; |
|
# if $csec is undefined, drop the student from all the courses matching |
|
# this one. If $csec is defined, drop them from all other sections of |
|
# this course and add them to section $csec |
|
my $cdom = $env{'course.'.$courseid.'.domain'}; |
|
my $cnum = $env{'course.'.$courseid.'.num'}; |
|
my %roles = &Apache::lonnet::dump('roles',$udom,$unam); |
|
my ($tmp) = keys(%roles); |
|
# Bail out if we were unable to get the students roles |
|
return "$1" if ($tmp =~ /^(con_lost|error|no_such_host)/i); |
|
# Go through the roles looking for enrollment in this course |
|
my $result = ''; |
|
foreach my $course (keys(%roles)) { |
|
if ($course=~m{^/\Q$cdom\E/\Q$cnum\E(?:\/)*(?:\s+)*(\w+)*\_st$}) { |
|
# We are in this course |
|
my $section=$1; |
|
$section='' if ($course eq "/$cdom/$cnum".'_st'); |
|
if (defined($csec) && $section eq $csec) { |
|
$result .= 'ok:'; |
|
} elsif ( ((!$section) && (!$csec)) || ($section ne $csec) ) { |
|
my (undef,$end,$start)=split(/\_/,$roles{$course}); |
|
my $now=time; |
|
# if this is an active role |
|
if (!($start && ($now<$start)) || !($end && ($now>$end))) { |
|
my $reply=&Apache::lonnet::modifystudent |
|
# dom name id mode pass f m l g |
|
($udom,$unam,'', '', '',undef,undef,undef,undef, |
|
$section,time,undef,undef,$desiredhost); |
|
$result .= $reply.':'; |
|
} |
|
} |
|
} |
|
} |
|
if ($result eq '') { |
|
$result = 'Unable to find section for this student'; |
|
} else { |
|
$result =~ s/(ok:)+/ok/g; |
|
} |
|
return $result; |
|
} |
|
|
|
=pod |
|
|
|
=item domain_form() |
=item domain_form() |
|
|
build a domain and server selection form |
build a domain and server selection form |
Line 356 sub javascript_validations {
|
Line 306 sub javascript_validations {
|
name => 'The optional name field was not specified.', |
name => 'The optional name field was not specified.', |
snum => 'The optional student number field was not specified.', |
snum => 'The optional student number field was not specified.', |
section => 'The optional section field was not specified.', |
section => 'The optional section field was not specified.', |
email => 'The optional email address field was not specified.', |
email => 'The optional e-mail address field was not specified.', |
continue => 'Continue enrollment?', |
continue => 'Continue enrollment?', |
); |
); |
|
|
Line 764 sub print_upload_manager_form {
|
Line 714 sub print_upload_manager_form {
|
['id', &mt('ID/Student Number'),$env{'form.id_choice'}], |
['id', &mt('ID/Student Number'),$env{'form.id_choice'}], |
['sec', &mt('Section'), $env{'form.sec_choice'}], |
['sec', &mt('Section'), $env{'form.sec_choice'}], |
['ipwd', &mt('Initial Password'),$env{'form.ipwd_choice'}], |
['ipwd', &mt('Initial Password'),$env{'form.ipwd_choice'}], |
['email',&mt('EMail Address'), $env{'form.email_choice'}]); |
['email',&mt('E-mail Address'), $env{'form.email_choice'}]); |
if ($env{'form.upfile_associate'} eq 'reverse') { |
if ($env{'form.upfile_associate'} eq 'reverse') { |
&Apache::loncommon::csv_print_samples($r,\@records); |
&Apache::loncommon::csv_print_samples($r,\@records); |
$i=&Apache::loncommon::csv_print_select_table($r,\@records, |
$i=&Apache::loncommon::csv_print_select_table($r,\@records, |
Line 1141 sub print_enroll_single_student_form {
|
Line 1091 sub print_enroll_single_student_form {
|
'hs' => "Home Server", |
'hs' => "Home Server", |
'pswd' => "Login Data", |
'pswd' => "Login Data", |
'psam' => "Please select an authentication mechanism", |
'psam' => "Please select an authentication mechanism", |
'mail' => "Email Address" |
'mail' => "E-mail Address" |
); |
); |
my $authhelp=&Apache::loncommon::help_open_topic('Auth_Options'); |
my $authhelp=&Apache::loncommon::help_open_topic('Auth_Options'); |
$user_data_html = <<END; |
$user_data_html = <<END; |
Line 1184 END
|
Line 1134 END
|
'mn' => "Middle Name", |
'mn' => "Middle Name", |
'ln' => "Last Name", |
'ln' => "Last Name", |
'gen' => "Generation", |
'gen' => "Generation", |
'mail' => "Email Address", |
'mail' => "E-mail Address", |
); |
); |
$user_data_html = <<END; |
$user_data_html = <<END; |
<h3>$lt{'udf'} $ccuname:$ccdomain</h3> |
<h3>$lt{'udf'} $ccuname:$ccdomain</h3> |
Line 1475 END
|
Line 1425 END
|
'start' => "start date", |
'start' => "start date", |
'end' => "end date", |
'end' => "end date", |
'type' => "enroll type/action", |
'type' => "enroll type/action", |
'email' => "email address", |
'email' => "e-mail address", |
'clicker'=> "clicker id", |
'clicker'=> "clicker id", |
'photo' => "photo", |
'photo' => "photo", |
); |
); |
Line 2625 sub upfile_drop_add {
|
Line 2575 sub upfile_drop_add {
|
} |
} |
} |
} |
} # end of foreach (@studentdata) |
} # end of foreach (@studentdata) |
$r->print("</p>\n<p>\n".&mt('Processed [_1] student(s).',$count). |
$r->print("</p>\n<p>\n".&mt('Processed [quant,_1,student].',$count). |
"</p>\n"); |
"</p>\n"); |
$r->print("<p>\n". |
$r->print("<p>\n". |
&mt('If active, the new role will be available when the '. |
&mt('If active, the new role will be available when the '. |
Line 2676 sub drop_student_list {
|
Line 2626 sub drop_student_list {
|
'<br />'); |
'<br />'); |
} |
} |
} |
} |
$r->print('<p><b>'.&mt('Dropped [_1] student(s).',$count).'</b></p>'); |
$r->print('<p><b>'.&mt('Dropped [quant,_1,student].',$count).'</b></p>'); |
$r->print('<p>'.&mt('Re-enrollment will re-activate data.')) if ($count); |
$r->print('<p>'.&mt('Re-enrollment will re-activate data.')) if ($count); |
} |
} |
|
|