version 1.39, 2002/05/03 17:45:07
|
version 1.40, 2002/05/03 20:38:13
|
Line 62 sub header {
|
Line 62 sub header {
|
return(<<ENDHEAD); |
return(<<ENDHEAD); |
<html> |
<html> |
<head> |
<head> |
<title>LON-CAPA Student Drop/Add</title> |
<title>LON-CAPA Enrollment Manager</title> |
</head> |
</head> |
<body bgcolor="#FFFFFF"> |
<body bgcolor="#FFFFFF"> |
<img align=right src=/adm/lonIcons/lonlogos.gif> |
<img align=right src=/adm/lonIcons/lonlogos.gif> |
<h1>Drop/Add Students</h1> |
<h1>$ENV{'course.'.$ENV{'request.course.id'}.'.description'}</h1> |
<form method="post" enctype="multipart/form-data" |
<h2>Enrollment Manager</h2> |
action="/adm/dropadd" name="studentform"> |
<form method="post" enctype="multipart/form-data" |
<h2>Course: $ENV{'course.'.$ENV{'request.course.id'}.'.description'}</h2> |
action="/adm/dropadd" name="studentform"> |
ENDHEAD |
ENDHEAD |
} |
} |
|
|
Line 150 sub menu_phase_one {
|
Line 150 sub menu_phase_one {
|
<hr> |
<hr> |
<h3>Upload a courselist</h3> |
<h3>Upload a courselist</h3> |
$upfile_select |
$upfile_select |
<p><input type=submit name=fileupload value="Upload Courselist"> |
<p><input type=submit name="fileupload" value="Upload Courselist"> |
<hr> |
<hr /> |
<h3>Enroll a single student</h3> |
<h3>Enroll a single student</h3> |
<p><input type=submit name=enroll value="Enroll Student"> |
<p><input type=submit name="enroll" value="Enroll Student"></p> |
<hr> |
<hr /> |
|
<h3>Classlist</h3> |
|
<p><input type=submit name="view" value="View Class List"></p> |
|
<hr /> |
<h3>Drop students</h3> |
<h3>Drop students</h3> |
<p><input type=submit name=drop value="Selection List"> |
<p><input type=submit name="drop" value="Selection List"></p> |
ENDUPFORM |
ENDUPFORM |
} |
} |
|
|
Line 170 sub phase_two_header {
|
Line 173 sub phase_two_header {
|
} |
} |
my $javascript_validations=&javascript_validations($krbdefdom); |
my $javascript_validations=&javascript_validations($krbdefdom); |
$r->print(<<ENDPICK); |
$r->print(<<ENDPICK); |
|
<h3>Uploading Class List</h3> |
<hr> |
<hr> |
<h3>Identify fields</h3> |
<h3>Identify fields</h3> |
Total number of records found in file: $distotal <hr /> |
Total number of records found in file: $distotal <hr /> |
Line 570 sub enroll_single_student {
|
Line 574 sub enroll_single_student {
|
# ======================================================= Menu Phase Two Enroll |
# ======================================================= Menu Phase Two Enroll |
sub menu_phase_two_enroll { |
sub menu_phase_two_enroll { |
my $r=shift; |
my $r=shift; |
|
$r->print("<h3>Enroll One Student</h3>"); |
my ($krbdefdom) = $ENV{'SERVER_NAME'}=~/(\w+\.\w+)$/; |
my ($krbdefdom) = $ENV{'SERVER_NAME'}=~/(\w+\.\w+)$/; |
$krbdefdom=~tr/a-z/A-Z/; |
$krbdefdom=~tr/a-z/A-Z/; |
my $today = time; |
my $today = time; |
Line 695 sub get_current_classlist {
|
Line 700 sub get_current_classlist {
|
# ========================================================= Menu Phase Two Drop |
# ========================================================= Menu Phase Two Drop |
sub menu_phase_two_drop { |
sub menu_phase_two_drop { |
my $r=shift; |
my $r=shift; |
|
$r->print("<h3>Drop Students</h3>"); |
my $cid=$ENV{'request.course.id'}; |
my $cid=$ENV{'request.course.id'}; |
my ($error,%currentlist)=&get_current_classlist |
my ($error,%currentlist)=&get_current_classlist |
($ENV{'course.'.$cid.'.domain'},$ENV{'course.'.$cid.'.num'}); |
($ENV{'course.'.$cid.'.domain'},$ENV{'course.'.$cid.'.num'}); |
Line 712 sub menu_phase_two_drop {
|
Line 718 sub menu_phase_two_drop {
|
} |
} |
} |
} |
|
|
|
# ============================================== view classlist |
|
sub menu_phase_two_view { |
|
my $r=shift; |
|
$r->print("<h3>Current Classlist</h3>"); |
|
my $cid=$ENV{'request.course.id'}; |
|
my ($error,%currentlist)=&get_current_classlist |
|
($ENV{'course.'.$cid.'.domain'},$ENV{'course.'.$cid.'.num'}); |
|
if (defined($error)) { |
|
if ($error =~ /^No such file or directory/) { |
|
$r->print("There are no students currently enrolled.\n"); |
|
} else { |
|
$r->print("<pre>ERROR:$error</pre>"); |
|
} |
|
} elsif (!defined(%currentlist)) { |
|
$r->print("There are no students currently enrolled.\n"); |
|
} else { |
|
# Print out the available choices |
|
&show_class_list($r,%currentlist); |
|
} |
|
} |
|
|
|
# =================================================== Show student list to drop |
|
sub show_class_list { |
|
my ($r,%currentlist)=@_; |
|
my $cid=$ENV{'request.course.id'}; |
|
$r->print(<<END); |
|
<p> |
|
<table border=2> |
|
<tr><th>username</th><th>domain</th><th>ID</th> |
|
<th>student name</th><th>generation</th><th>section</th></tr> |
|
END |
|
foreach (sort keys %currentlist) { |
|
my ($sname,$sdom)=split(/\:/,$_); |
|
my %reply=&Apache::lonnet::idrget($sdom,$sname); |
|
my $ssec=&Apache::lonnet::usection($sdom,$sname,$cid); |
|
my %info=&Apache::lonnet::get('environment', |
|
['firstname','middlename', |
|
'lastname','generation'], |
|
$sdom, $sname); |
|
my ($tmp) = keys(%info); |
|
if ($tmp =~ /^(con_lost|error|no_such_host)/i) { |
|
$r->print('<tr><td colspan="6"><font color="red">'. |
|
'Internal error: unable to get environment '. |
|
'for '.$sname.' in domain '.$sdom.'</font></td></tr>'); |
|
} else { |
|
$r->print(<<"END"); |
|
<tr> |
|
<td>$sname</td> |
|
<td>$sdom</td> |
|
<td>$reply{$sname}</td> |
|
<td>$info{'lastname'}, $info{'firstname'} $info{'middlename'}</td> |
|
<td>$info{'generation'}</td> |
|
<td>$ssec</td> |
|
</tr> |
|
END |
|
} |
|
} |
|
$r->print('</table><br>'); |
|
} |
|
|
# =================================================== Show student list to drop |
# =================================================== Show student list to drop |
sub show_drop_list { |
sub show_drop_list { |
my ($r,%currentlist)=@_; |
my ($r,%currentlist)=@_; |
Line 1007 sub handler {
|
Line 1073 sub handler {
|
&menu_phase_two_enroll($r); |
&menu_phase_two_enroll($r); |
} elsif ($ENV{'form.drop'}) { |
} elsif ($ENV{'form.drop'}) { |
&menu_phase_two_drop($r); |
&menu_phase_two_drop($r); |
|
} elsif ($ENV{'form.view'}) { |
|
&menu_phase_two_view($r); |
} |
} |
} |
} |
# Phase three |
# Phase three |