--- loncom/interface/Attic/londropadd.pm 2008/09/11 14:47:21 1.174
+++ loncom/interface/Attic/londropadd.pm 2012/04/24 21:05:15 1.179
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# Handler to drop and add students in courses
#
-# $Id: londropadd.pm,v 1.174 2008/09/11 14:47:21 bisitz Exp $
+# $Id: londropadd.pm,v 1.179 2012/04/24 21:05:15 droeschl Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -26,8 +26,23 @@
# http://www.lon-capa.org/
#
#
-###############################################################
-##############################################################
+
+=head1 NAME
+
+Apache::londropadd.pm
+
+=head1 SYNOPSIS
+
+drop & add students
+
+This is part of the LearningOnline Network with CAPA project
+described at http://www.lon-capa.org.
+
+=head1 SUBROUTINES
+
+=over
+
+=cut
package Apache::londropadd;
@@ -42,8 +57,6 @@ use Apache::lonlocal;
use Apache::longroup;
use LONCAPA();
-###############################################################
-###############################################################
sub header {
my ($jscript,$loaditems) = @_;
my $start_page;
@@ -59,54 +72,14 @@ $start_page
ENDHEAD
}
-###############################################################
-###############################################################
-# Drop student from all sections of a course, except optional $csec
-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()
+
+ build a domain and server selection form
+
+=cut
-###############################################################
-###############################################################
-# build a domain and server selection form
sub domain_form {
my ($defdom) = @_;
# Set up domain and server selection forms
@@ -135,9 +108,14 @@ sub domain_form {
return $result;
}
-###############################################################
-###############################################################
-# Menu Phase One
+=pod
+
+=item print_main_menu()
+
+ Menu Phase One
+
+=cut
+
sub print_main_menu {
my ($r,$permission)=@_;
#
@@ -224,13 +202,15 @@ sub print_main_menu {
return;
}
-###############################################################
-###############################################################
+
+
sub hidden_input {
my ($name,$value) = @_;
return ''."\n";
}
+
+
sub print_upload_manager_header {
my ($r,$datatoken,$distotal,$krbdefdom)=@_;
my $javascript;
@@ -291,8 +271,10 @@ sub print_upload_manager_header {
$javascript."\n".$javascript_validations.'');
}
-###############################################################
-###############################################################
+
+
+
+
sub javascript_validations {
my ($mode,$krbdefdom,$curr_authtype,$curr_authfield,$domain)=@_;
my $authheader;
@@ -324,7 +306,7 @@ sub javascript_validations {
name => 'The optional name field was not specified.',
snum => 'The optional student number 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?',
);
@@ -471,8 +453,9 @@ END
return $result;
}
-###############################################################
-###############################################################
+
+
+
sub upload_manager_javascript_forward_associate {
return(<".&mt('Drop Students')."
");
@@ -1264,7 +1264,15 @@ sub print_drop_menu {
return;
}
-# ============================================== view classlist
+
+=pod
+
+=item print_html_classlist()
+
+ view classlist
+
+=cut
+
sub print_html_classlist {
my ($r,$mode,$permission) = @_;
if (! exists($env{'form.sortby'})) {
@@ -1354,7 +1362,15 @@ sub print_html_classlist {
}
}
-# =================================================== Show student list to drop
+
+=pod
+
+=item show_class_list()
+
+ Show student list to drop
+
+=cut
+
sub show_class_list {
my ($r,$mode,$linkto,$statusmode,$classlist,$keylist)=@_;
my $cid=$env{'request.course.id'};
@@ -1409,7 +1425,7 @@ END
'start' => "start date",
'end' => "end date",
'type' => "enroll type/action",
- 'email' => "email address",
+ 'email' => "e-mail address",
'clicker'=> "clicker id",
'photo' => "photo",
);
@@ -1756,9 +1772,14 @@ END
}
-#
-# print out form for modification of a single students data
-#
+=pod
+
+=item print_modify_student_form()
+
+ print out form for modification of a single students data
+
+=cut
+
sub print_modify_student_form {
my $r = shift();
&Apache::loncommon::get_unprocessed_cgi($ENV{'QUERY_STRING'},
@@ -1887,9 +1908,15 @@ END
return;
}
-#
-# modify a single students section
-#
+
+=pod
+
+=item modify_single_student()
+
+ modify a single students section
+
+=cut
+
sub modify_single_student {
my ($r) = @_;
#
@@ -2119,12 +2146,10 @@ sub get_enrollment_data {
return ($start,$end,$section);
}
-#################################################
-#################################################
=pod
-=item show_drop_list
+=item show_drop_list()
Display a list of students to drop
Inputs:
@@ -2144,8 +2169,6 @@ which describes the order elements are s
=cut
-#################################################
-#################################################
sub show_drop_list {
my ($r,$classlist,$keylist,$nosort)=@_;
my $cid=$env{'request.course.id'};
@@ -2305,9 +2328,15 @@ END
return;
}
-#
-# Print out the initial form to get the courselist file
-#
+
+=pod
+
+=item print_first_courselist_upload_form()
+
+ Print out the initial form to get the courselist file
+
+=cut
+
sub print_first_courselist_upload_form {
my $r=shift;
my $str;
@@ -2332,7 +2361,15 @@ sub print_first_courselist_upload_form {
return;
}
-# ================================================= Drop/Add from uploaded file
+
+=pod
+
+=item upfile_drop_add()
+
+ Drop/Add from uploaded file
+
+=cut
+
sub upfile_drop_add {
my $r=shift;
&Apache::loncommon::load_tmp_file($r);
@@ -2538,7 +2575,7 @@ sub upfile_drop_add {
}
}
} # end of foreach (@studentdata)
- $r->print("
\n".&mt('Processed [_1] student(s).',$count). + $r->print("
\n\n".&mt('Processed [quant,_1,student].',$count). "
\n"); $r->print("\n".
&mt('If active, the new role will be available when the '.
@@ -2589,7 +2626,7 @@ sub drop_student_list {
'
');
}
}
- $r->print('
'.&mt('Dropped [_1] student(s).',$count).'
'); + $r->print(''.&mt('Dropped [quant,_1,student].',$count).'
'); $r->print(''.&mt('Re-enrollment will re-activate data.')) if ($count); } @@ -2646,12 +2683,9 @@ sub get_permission { return (\%permission,$allowed); } -################################################################### -################################################################### - =pod -=item &handler +=item &handler() The typical handler you see in all these modules. Takes $r, the http request, as an argument. @@ -2678,8 +2712,6 @@ The response to the request is governed =cut -################################################################### -################################################################### sub handler { my $r=shift; if ($r->header_only) { @@ -2890,10 +2922,12 @@ sub handler { return OK; } -################################################################### -################################################################### 1; __END__ +=pod +=back + +=cut