--- loncom/interface/loncreateuser.pm 2008/08/26 23:20:22 1.249.2.6
+++ loncom/interface/loncreateuser.pm 2008/07/16 12:06:28 1.256
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# Create a user
#
-# $Id: loncreateuser.pm,v 1.249.2.6 2008/08/26 23:20:22 raeburn Exp $
+# $Id: loncreateuser.pm,v 1.256 2008/07/16 12:06:28 raeburn Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -967,7 +967,7 @@ sub display_existing_roles {
if (defined($coursedata{'description'})) {
$carea=$coursedata{'description'}.
'
'.&mt('Domain').': '.$coursedom.(' 'x8).
- &Apache::loncommon::syllabuswrapper(&mt('Syllabus'),$coursedir,$coursedom);
+ &Apache::loncommon::syllabuswrapper('Syllabus',$coursedir,$coursedom);
$sortkey.="\0".$coursedata{'description'};
$class=$coursedata{'type'};
} else {
@@ -1397,22 +1397,30 @@ sub modify_login_block {
sub personal_data_display {
my ($ccuname,$ccdomain,$newuser,$context,$inst_results,$rolesarray) = @_;
- my ($output,$showforceid,%userenv,%canmodify);
+ my ($output,$showforceid,%userenv,%canmodify,@inststatuses);
my @userinfo = ('firstname','middlename','lastname','generation',
'permanentemail','id');
my $rowcount = 0;
my $editable = 0;
+ if ($context eq 'selfcreate') {
+ if (ref($inst_results) eq 'HASH') {
+ @inststatuses = &get_inststatuses($inst_results);
+ if (@inststatuses == 0) {
+ @inststatuses = ('default');
+ }
+ $rolesarray = \@inststatuses;
+ }
+ }
if (!$newuser) {
# Get the users information
%userenv = &Apache::lonnet::get('environment',
['firstname','middlename','lastname','generation',
'permanentemail','id'],$ccdomain,$ccuname);
+ }
+ if ((!$newuser) || ($context eq 'selfcreate')) {
%canmodify =
&Apache::lonuserutils::can_modify_userinfo($context,$ccdomain,
\@userinfo,$rolesarray);
- } elsif ($context eq 'selfcreate') {
- %canmodify = &selfcreate_canmodify($context,$ccdomain,\@userinfo,
- $inst_results,$rolesarray);
}
my %lt=&Apache::lonlocal::texthash(
'pd' => "Personal Data",
@@ -1421,7 +1429,7 @@ sub personal_data_display {
'lastname' => "Last Name",
'generation' => "Generation",
'permanentemail' => "Permanent e-mail address",
- 'id' => "Student/Employee ID",
+ 'id' => "ID/Student Number",
'lg' => "Login Data"
);
my %textboxsize = (
@@ -1448,7 +1456,7 @@ sub personal_data_display {
$row .= ''.$inst_results->{$item};
} else {
if ($context eq 'selfcreate') {
- if ($canmodify{$item}) {
+ if ($canmodify{$item}) {
$row .= '';
$editable ++;
} else {
@@ -1498,21 +1506,6 @@ sub personal_data_display {
}
}
-sub selfcreate_canmodify {
- my ($context,$dom,$userinfo,$inst_results,$rolesarray) = @_;
- if (ref($inst_results) eq 'HASH') {
- my @inststatuses = &get_inststatuses($inst_results);
- if (@inststatuses == 0) {
- @inststatuses = ('default');
- }
- $rolesarray = \@inststatuses;
- }
- my %canmodify =
- &Apache::lonuserutils::can_modify_userinfo($context,$dom,$userinfo,
- $rolesarray);
- return %canmodify;
-}
-
sub get_inststatuses {
my ($insthashref) = @_;
my @inststatuses = ();
@@ -1847,7 +1840,7 @@ sub update_user_data {
$env{'form.c'.$item} = $userenv{$item};
}
}
- # Check to see if we can change the Student/Employee ID
+ # Check to see if we can change the ID/student number
my $forceid = $env{'form.forceid'};
my $recurseid = $env{'form.recurseid'};
my (%alerts,%rulematch,%idinst_results,%curr_rules,%got_rules);
@@ -1858,10 +1851,7 @@ sub update_user_data {
(!$forceid)) {
if ($env{'form.cid'} ne $uidhash{$env{'form.ccuname'}}) {
$env{'form.cid'} = $userenv{'id'};
- $no_forceid_alert = &mt('New Student/Employee ID does not match existing ID for this user.')
- .'
'
- .&mt("Change is not permitted without checking the 'Force ID change' checkbox on the previous page.")
- .'
'."\n";
+ $no_forceid_alert = &mt('New student/employeeID does not match existing ID for this user.').'
'.&mt('Change is not permitted without checking the \'Force ID change\' checkbox on the previous page.').'
'."\n";
}
}
if ($env{'form.cid'} ne $userenv{'id'}) {
@@ -1975,7 +1965,7 @@ sub update_user_data {
'mddl' => "middle",
'lst' => "last",
'gen' => "generation",
- 'id' => "Student/Employee ID",
+ 'id' => "ID/Student number",
'mail' => "permanent e-mail",
'disk' => "disk space allocated to portfolio files",
'prvs' => "Previous",
@@ -2058,7 +2048,7 @@ END
# They did not want to change the users name or quota but we can
# still tell them what the name and quota are
my %lt=&Apache::lonlocal::texthash(
- 'id' => "Student/Employee ID",
+ 'id' => "ID/Student number",
'mail' => "Permanent e-mail",
'disk' => "Disk space allocated to user's portfolio files",
);
@@ -2101,10 +2091,8 @@ END
$r->print(''.$rolestr.'
'.
&mt('Contact your helpdesk for more information.',"javascript:helpMenu('display')").'
');
}
- $r->print(''
- .$no_forceid_alert
- .&Apache::lonuserutils::print_namespacing_alerts($env{'form.ccdomain'},\%alerts,\%curr_rules)
- .'');
+ $r->print($no_forceid_alert.
+ &Apache::lonuserutils::print_namespacing_alerts($env{'form.ccdomain'},\%alerts,\%curr_rules));
}
if ($env{'form.action'} eq 'singlestudent') {
&enroll_single_student($r,$uhome,$amode,$genpwd,$now,$newuser,$context);
@@ -3622,15 +3610,15 @@ sub visible_in_cat {
$cathash = $domconf{'coursecategories'}{'cats'};
}
if ($settable{'togglecats'} && $settable{'categories'}) {
- $cansetvis = &mt('You are able to both assign a course category and choose to exclude this course from the catalog.');
+ $cansetvis = &mt('You are able to both assign a course category and choose to exclude this course from the catalog.');
} elsif ($settable{'togglecats'}) {
- $cansetvis = &mt('You are able to choose to exclude this course from the catalog, but only a Domain Coordinator may assign a course category.');
+ $cansetvis = &mt('You are able to choose to exclude this course from the catalog, but only a Domain Coordinator may assign a course category.');
} elsif ($settable{'categories'}) {
- $cansetvis = &mt('You may assign a course category, but only a Domain Coordinator may choose to exclude this course from the catalog.');
+ $cansetvis = &mt('You may assign a course category, but only a Domain Coordinator may choose to exclude this course from the catalog.');
} else {
- $cansetvis = &mt('Only a Domain Coordinator may assign a course category or choose to exclude this course from the catalog.');
+ $cansetvis = &mt('Only a Domain Coordinator may assign a course category or choose to exclude this course from the catalog.');
}
-
+
my %currsettings =
&Apache::lonnet::get('environment',['hidefromcat','categories','internal.coursecode'],
$cdom,$cnum);
@@ -3640,7 +3628,7 @@ sub visible_in_cat {
$cathash = $domconf{'coursecategories'}{'cats'};
if (ref($cathash) eq 'HASH') {
if ($cathash->{'instcode::0'} eq '') {
- push(@vismsgs,'dc_addinst');
+ push(@vismsgs,'dc_addinst');
} else {
$visible = 1;
}
@@ -3679,7 +3667,7 @@ sub visible_in_cat {
}
}
if (!$matched) {
- if ($settable{'categories'}) {
+ if ($settable{'categories'}) {
push(@vismsgs,'chgcat');
} else {
push(@vismsgs,'dc_chgcat');
@@ -3690,7 +3678,7 @@ sub visible_in_cat {
}
} else {
if (ref($cathash) eq 'HASH') {
- if ((keys(%{$cathash}) > 1) ||
+ if ((keys(%{$cathash}) > 1) ||
(keys(%{$cathash}) == 1) && ($cathash->{'instcode::0'} eq '')) {
if ($settable{'categories'}) {
push(@vismsgs,'addcat');
@@ -3750,14 +3738,13 @@ sub selfenroll_inst_types {
$output .= '