');
$r->print(&personal_data_display($ccuname,$ccdomain,$newuser,$context,
- $inst_results{$ccuname.':'.$ccdomain},$readonly));
+ $inst_results{$ccuname.':'.$ccdomain}));
# Option to disable student/employee ID conflict checking not offerred for new users.
my ($home_server_pick,$numlib) =
&Apache::loncommon::home_server_form_item($ccdomain,'hserver',
@@ -1568,7 +1375,7 @@ $lt{'hs'}: $home_server_pick
}
if (&Apache::lonnet::allowed('ccc',$env{'request.role.domain'})) {
$r->print('
'.
- &mt('Can Request Creation of Courses/Communities in this Domain?').'
'.
+ &mt('User Can Request Creation of Courses/Communities in this Domain?').''.
&Apache::loncommon::start_data_table().
&build_tools_display($ccuname,$ccdomain,
'requestcourses').
@@ -1664,7 +1471,7 @@ ENDAUTH
$inst_results{$ccuname.':'.$ccdomain}));
if ((&Apache::lonnet::allowed('ccc',$env{'request.role.domain'})) ||
(&Apache::lonnet::allowed('udp',$env{'request.role.domain'}))) {
- $r->print('
'.&mt('Can Request Creation of Courses/Communities in this Domain?').'
'."\n".
+ $r->print('
'.&mt('User Can Request Creation of Courses/Communities in this Domain?').'
');
- my @order = ('auth','quota','tools','requestauthor','authordefaults');
+ my @order = ('auth','quota','tools','requestauthor');
my %user_text;
my ($isadv,$isauthor) =
&Apache::lonnet::is_advanced_user($ccdomain,$ccuname);
- if (((&Apache::lonnet::allowed('cau',$env{'request.role.domain'})) ||
+ if ((!$isauthor) &&
+ ((&Apache::lonnet::allowed('cau',$env{'request.role.domain'})) ||
(&Apache::lonnet::allowed('udp',$env{'request.role.domain'}))) &&
- ($env{'request.role.domain'} eq $ccdomain)) {
- if (!$isauthor) {
- $user_text{'requestauthor'} = &domainrole_req($ccuname,$ccdomain);
- }
- $user_text{'authordefaults'} = &authoring_defaults($ccuname,$ccdomain);
- if (&Apache::lonnet::allowed('cau',$env{'request.role.domain'})) {
- $need_quota_js = 1;
- }
+ ($env{'request.role.domain'} eq $ccdomain)) {
+ $user_text{'requestauthor'} = &domainrole_req($ccuname,$ccdomain);
}
- $user_text{'auth'} = &user_authentication($ccuname,$ccdomain,$formname,$crstype,$permission);
+ $user_text{'auth'} = &user_authentication($ccuname,$ccdomain,$formname);
if ((&Apache::lonnet::allowed('mpq',$ccdomain)) ||
(&Apache::lonnet::allowed('mut',$ccdomain)) ||
(&Apache::lonnet::allowed('udp',$ccdomain))) {
- $user_text{'quota'} = '
'.&mt('User Tools').'
'."\n".
- &Apache::loncommon::start_data_table();
- if ((&Apache::lonnet::allowed('mut',$ccdomain)) ||
- (&Apache::lonnet::allowed('udp',$ccdomain))) {
- $user_text{'quota'} .= &build_tools_display($ccuname,$ccdomain,'tools');
- }
# Current user has quota modification privileges
- if ((&Apache::lonnet::allowed('mpq',$ccdomain)) ||
- (&Apache::lonnet::allowed('udp',$ccdomain))) {
- $user_text{'quota'} .= &user_quotas($ccuname,$ccdomain,'portfolio');
- $need_quota_js = 1;
- }
- $user_text{'quota'} .= &Apache::loncommon::end_data_table();
+ $user_text{'quota'} = &user_quotas($ccuname,$ccdomain);
}
if (!&Apache::lonnet::allowed('mpq',$ccdomain)) {
if (&Apache::lonnet::allowed('mpq',$env{'request.role.domain'})) {
my %lt=&Apache::lonlocal::texthash(
- 'dska' => "Disk quotas for user's portfolio",
- 'youd' => "You do not have privileges to modify the portfolio quota for this user.",
+ 'dska' => "Disk quotas for user's portfolio and Authoring Space",
+ 'youd' => "You do not have privileges to modify the portfolio and/or Authoring Space quotas for this user.",
'ichr' => "If a change is required, contact a domain coordinator for the domain",
);
$user_text{'quota'} = < "User Tools Availability",
- 'yodo' => "You do not have privileges to modify Portfolio, Blog, Personal Information Page, or Time Zone settings for this user.",
+ 'yodo' => "You do not have privileges to modify Portfolio, Blog, WebDAV, or Personal Information Page settings for this user.",
'ifch' => "If a change is required, contact a domain coordinator for the domain",
);
$user_text{'tools'} = <print(' onclick="auth_check()" \>'."\n");
} else {
- $r->print(' onclick="this.form.submit()" \>'."\n");
+ $r->print('onclick="this.form.submit()" \>'."\n");
}
} else {
$r->print(''.
@@ -1823,9 +1614,6 @@ ENDNOTOOLSPRIV
$r->print(&Apache::lonhtmlcommon::echo_form_input(['phase','userrole','ccdomain','prevphase','currstate','ccuname','ccdomain']));
$r->print('');
$r->print('
');
- if ($need_quota_js) {
- $r->print(&user_quota_js());
- }
return;
}
@@ -1884,16 +1672,14 @@ sub date_sections_select {
sub validation_javascript {
my ($context,$ccdomain,$pjump_def,$crstype,$groupslist,$newuser,$formname,
- $loaditem,$permission) = @_;
+ $loaditem) = @_;
my $dc_setcourse_code = '';
my $nondc_setsection_code = '';
if ($context eq 'domain') {
- if ((ref($permission) eq 'HASH') && ($permission->{'cusr'})) {
- my $dcdom = $env{'request.role.domain'};
- $loaditem->{'onload'} = "document.cu.coursedesc.value='';";
- $dc_setcourse_code =
- &Apache::lonuserutils::dc_setcourse_js('cu','singleuser',$context);
- }
+ my $dcdom = $env{'request.role.domain'};
+ $loaditem->{'onload'} = "document.cu.coursedesc.value='';";
+ $dc_setcourse_code =
+ &Apache::lonuserutils::dc_setcourse_js('cu','singleuser',$context);
} else {
my $checkauth;
if (($newuser) || (&Apache::lonnet::allowed('mau',$ccdomain))) {
@@ -2384,7 +2170,7 @@ sub new_domain_roles {
}
sub user_authentication {
- my ($ccuname,$ccdomain,$formname,$crstype,$permission) = @_;
+ my ($ccuname,$ccdomain,$formname) = @_;
my $currentauth=&Apache::lonnet::queryauthenticate($ccuname,$ccdomain);
my $outcome;
my %lt=&Apache::lonlocal::texthash(
@@ -2422,6 +2208,7 @@ $lt{'uuas'} ($currentauth). $lt{'adcs'}.
ENDBADAUTH
}
} else { # Authentication type is valid
+
&initialize_authen_forms($ccdomain,$formname,$currentauth,'modifyuser');
my ($authformcurrent,$can_modify,@authform_others) =
&modify_login_block($ccdomain,$currentauth);
@@ -2456,43 +2243,6 @@ ENDBADAUTH
}
$outcome .= &Apache::loncommon::end_data_table();
} else {
- if (($currentauth =~ /^internal:/) &&
- (&Apache::lonuserutils::can_change_internalpass($ccuname,$ccdomain,$crstype,$permission))) {
- $outcome = <<"ENDJS";
-
-ENDJS
-
- $outcome .= '
'.
- &Apache::loncommon::end_data_table_row().
- &Apache::loncommon::end_data_table();
- }
if (&Apache::lonnet::allowed('udp',$ccdomain)) {
# Current user has rights to view domain preferences for user's domain
my $result;
@@ -2601,8 +2351,8 @@ sub modify_login_block {
}
sub personal_data_display {
- my ($ccuname,$ccdomain,$newuser,$context,$inst_results,$rolesarray,$now,
- $captchaform,$emailusername,$usertype,$usernameset,$condition,$excluded,$showsubmit) = @_;
+ my ($ccuname,$ccdomain,$newuser,$context,$inst_results,$rolesarray,
+ $now,$captchaform,$emailusername,$usertype,$usernameset,$condition) = @_;
my ($output,%userenv,%canmodify,%canmodify_status);
my @userinfo = ('firstname','middlename','lastname','generation',
'permanentemail','id');
@@ -2678,42 +2428,20 @@ sub personal_data_display {
$output = '
'.$lt{'pd'}.'
'.
&Apache::lonhtmlcommon::start_pick_box();
if (($context eq 'selfcreate') && ($newuser eq 'email')) {
- my $size = 25;
if ($condition) {
- if ($condition =~ /^\@[^\@]+$/) {
- $size = 10;
+ if ($condition =~ /[-\w]+\.[-\w]+$/) {
+ $condition = '@'.$condition;
} else {
undef($condition);
}
}
- if ($excluded) {
- unless ($excluded =~ /^\@[^\@]+$/) {
- undef($condition);
- }
- }
$output .= &Apache::lonhtmlcommon::row_title($lt{'email'}.'*',undef,
'LC_oddrow_value')."\n".
- '';
- if ($condition) {
- $output .= $condition;
- } elsif ($excluded) {
- $output .= ' '.&mt('You must use an e-mail address that does not end with [_1]',
- $excluded).'';
- }
- if ($usernameset eq 'first') {
- $output .= ' ';
- if ($condition) {
- $output .= &mt('Your username in LON-CAPA will be the part of your e-mail address before [_1]',
- $condition);
- } else {
- $output .= &mt('Your username in LON-CAPA will be the part of your e-mail address before the @');
- }
- $output .= '';
- }
+ '';
$rowcount ++;
$output .= &Apache::lonhtmlcommon::row_closure(1);
- my $upassone = '';
- my $upasstwo = '';
+ my $upassone = '';
+ my $upasstwo = '';
$output .= &Apache::lonhtmlcommon::row_title(&mt('Password').'*',
'LC_pick_box_title',
'LC_oddrow_value')."\n".
@@ -2724,14 +2452,13 @@ sub personal_data_display {
'LC_oddrow_value')."\n".
$upasstwo.
&Apache::lonhtmlcommon::row_closure()."\n";
- if ($usernameset eq 'free') {
- my $onclick = "toggleUsernameDisp(this,'selfcreateusername');";
+ if ($usernameset) {
+ my $onclick = "toggleDisplay(this,'selfcreateusername');";
$output .= &Apache::lonhtmlcommon::row_title($lt{'username'},undef,'LC_oddrow_value')."\n".
- ''.&mt('Use e-mail address: ').
- ''.(' 'x2).
- ''."\n".
+ &mt('Use e-mail address: ').
+ ''."\n".
+ (' 'x2).
+ ''."\n".
'
'.
' '.&mt('Preferred username').
' '.
@@ -2839,17 +2566,12 @@ sub personal_data_display {
&Apache::lonhtmlcommon::row_closure(1);
$rowcount ++;
}
- if ($showsubmit) {
- my $submit_text = &mt('Create account');
- $output .= &Apache::lonhtmlcommon::row_title()."\n".
- ' ';
- if ($usertype ne '') {
- $output .= '';
- }
- $output .= &Apache::lonhtmlcommon::row_closure(1);
- }
+ my $submit_text = &mt('Create account');
+ $output .= &Apache::lonhtmlcommon::row_title()."\n".
+ ' '.
+ ''.
+ &Apache::lonhtmlcommon::row_closure(1);
}
$output .= &Apache::lonhtmlcommon::end_pick_box();
if (wantarray) {
@@ -2933,7 +2655,7 @@ sub get_inststatuses {
# ================================================================= Phase Three
sub update_user_data {
- my ($r,$context,$crstype,$brcrum,$showcredits,$permission) = @_;
+ my ($r,$context,$crstype,$brcrum,$showcredits) = @_;
my $uhome=&Apache::lonnet::homeserver($env{'form.ccuname'},
$env{'form.ccdomain'});
# Error messages
@@ -3069,10 +2791,9 @@ sub update_user_data {
my (%alerts,%rulematch,%inst_results,%curr_rules);
my @userinfo = ('firstname','middlename','lastname','generation','permanentemail','id');
- my @usertools = ('aboutme','blog','portfolio','timezone');
- my @requestcourses = ('official','unofficial','community','textbook');
+ my @usertools = ('aboutme','blog','webdav','portfolio');
+ my @requestcourses = ('official','unofficial','community','textbook','placement');
my @requestauthor = ('requestauthor');
- my @authordefaults = ('webdav','editors');
my ($othertitle,$usertypes,$types) =
&Apache::loncommon::sorted_inst_types($env{'form.ccdomain'});
my %canmodify_status =
@@ -3181,29 +2902,6 @@ sub update_user_data {
$newcustom{'requestauthor'},
\%changeHash,'requestauthor');
}
- if ($env{'form.customeditors'} == 1) {
- my @editors;
- my @posseditors = &Apache::loncommon::get_env_multiple('form.custom_editor');
- if (@posseditors) {
- foreach my $editor (@posseditors) {
- if (grep(/^\Q$editor\E$/,@posseditors)) {
- unless (grep(/^\Q$editor\E$/,@editors)) {
- push(@editors,$editor);
- }
- }
- }
- }
- if (@editors) {
- @editors = sort(@editors);
- $changed{'editors'} = &tool_admin('editors',join(',',@editors),
- \%changeHash,'authordefaults');
- }
- }
- if ($env{'form.customwebdav'} == 1) {
- $newcustom{'webdav'} = $env{'form.authordefaults_webdav'};
- $changed{'webdav'} = &tool_admin('webdav',$newcustom{'webdav'},
- \%changeHash,'authordefaults');
- }
}
if ($canmodify_status{'inststatus'}) {
if (exists($env{'form.inststatus'})) {
@@ -3223,7 +2921,7 @@ sub update_user_data {
$env{'form.ccdomain'},$env{'form.ccuname'});
}
}
- $r->print(' '.&mt('Home Server').': '.$uhome.' '.
+ $r->print(' '.&mt('Home server').': '.$uhome.' '.
&Apache::lonnet::hostname($uhome));
} elsif (($env{'form.login'} ne 'nochange') &&
($env{'form.login'} ne '' )) {
@@ -3238,19 +2936,12 @@ sub update_user_data {
&Apache::lonnet::modifyuserauth(
$env{'form.ccdomain'},$env{'form.ccuname'},
$amode,$genpwd));
- $r->print(' '.&mt('Home Server').': '.&Apache::lonnet::homeserver
+ $r->print(' '.&mt('Home server').': '.&Apache::lonnet::homeserver
($env{'form.ccuname'},$env{'form.ccdomain'}));
} else {
# Okay, this is a non-fatal error.
- $r->print($error.&mt('You do not have privileges to modify the authentication configuration for this user.').$end);
+ $r->print($error.&mt('You do not have the authority to modify this users authentication information.').$end);
}
- } elsif (($env{'form.intarg'} ne '') &&
- (&Apache::lonnet::queryauthenticate($env{'form.ccuname'},$env{'form.ccdomain'}) =~ /^internal:/) &&
- (&Apache::lonuserutils::can_change_internalpass($env{'form.ccuname'},$env{'form.ccdomain'},$crstype,$permission))) {
- $r->print('Modifying authentication: '.
- &Apache::lonnet::modifyuserauth(
- $env{'form.ccdomain'},$env{'form.ccuname'},
- 'internal',$env{'form.intarg'}));
}
$r->rflush(); # Finish display of header before time consuming actions start
&Apache::lonhtmlcommon::Increment_PrgWin($r,\%prog_state);
@@ -3269,13 +2960,12 @@ sub update_user_data {
my %userenv = &Apache::lonnet::get
('environment',['firstname','middlename','lastname','generation',
'id','permanentemail','portfolioquota','authorquota','inststatus',
- 'tools.aboutme','tools.blog','tools.webdav',
- 'tools.portfolio','tools.timezone',
- 'authoreditors','requestauthor',
+ 'tools.aboutme','tools.blog','tools.webdav','tools.portfolio',
'requestcourses.official','requestcourses.unofficial',
'requestcourses.community','requestcourses.textbook',
'reqcrsotherdom.official','reqcrsotherdom.unofficial',
- 'reqcrsotherdom.community','reqcrsotherdom.textbook'],
+ 'reqcrsotherdom.community','reqcrsotherdom.textbook',
+ 'reqcrsotherdom.placement','requestauthor'],
$env{'form.ccdomain'},$env{'form.ccuname'});
my ($tmp) = keys(%userenv);
if ($tmp =~ /^(con_lost|error)/i) {
@@ -3403,7 +3093,7 @@ sub update_user_data {
%oldsettingstatus,%newsettingstatus);
@disporder = ('inststatus');
if ($env{'request.role.domain'} eq $env{'form.ccdomain'}) {
- push(@disporder,('requestcourses','requestauthor','authordefaults'));
+ push(@disporder,'requestcourses','requestauthor');
} else {
push(@disporder,'reqcrsotherdom');
}
@@ -3431,7 +3121,6 @@ sub update_user_data {
}
if (&Apache::lonnet::allowed('cau',$env{'form.ccdomain'})) {
$canshow{'requestauthor'} = 1;
- $canshow{'authordefaults'} = 1;
}
my (%changeHash,%changed);
if ($oldinststatus eq '') {
@@ -3540,14 +3229,8 @@ sub update_user_data {
if ($env{'form.ccdomain'} eq $env{'request.role.domain'}) {
&tool_changes('requestcourses',\@requestcourses,\%oldsettings,\%oldsettingstext,
\%userenv,\%changeHash,\%changed,\%newsettings,\%newsettingstext);
- my ($isadv,$isauthor) =
- &Apache::lonnet::is_advanced_user($env{'form.ccdomain'},$env{'form.ccuname'});
- unless ($isauthor) {
- &tool_changes('requestauthor',\@requestauthor,\%oldsettings,\%oldsettingstext,
- \%userenv,\%changeHash,\%changed,\%newsettings,\%newsettingstext);
- }
- &tool_changes('authordefaults',\@authordefaults,\%oldsettings,\%oldsettingstext,
- \%userenv,\%changeHash,\%changed,\%newsettings,\%newsettingstext);
+ &tool_changes('requestauthor',\@requestauthor,\%oldsettings,\%oldsettingstext,
+ \%userenv,\%changeHash,\%changed,\%newsettings,\%newsettingstext);
} else {
&tool_changes('reqcrsotherdom',\@requestcourses,\%oldsettings,\%oldsettingstext,
\%userenv,\%changeHash,\%changed,\%newsettings,\%newsettingstext);
@@ -3571,68 +3254,28 @@ sub update_user_data {
if ($chgresult eq 'ok') {
if (($env{'user.name'} eq $env{'form.ccuname'}) &&
($env{'user.domain'} eq $env{'form.ccdomain'})) {
- my (%newenvhash,$got_domdefs,%domdefaults,$got_userenv,
- %userenv);
- my @fromenv = keys(%changed);
- push(@fromenv,'inststatus');
+ my %newenvhash;
foreach my $key (keys(%changed)) {
- if (($key eq 'official') || ($key eq 'unofficial')
- || ($key eq 'community') || ($key eq 'textbook')) {
+ if (($key eq 'official') || ($key eq 'unofficial') ||
+ ($key eq 'community') || ($key eq 'textbook') ||
+ ($key eq 'placement')) {
$newenvhash{'environment.requestcourses.'.$key} =
$changeHash{'requestcourses.'.$key};
if ($changeHash{'requestcourses.'.$key}) {
$newenvhash{'environment.canrequest.'.$key} = 1;
} else {
- unless ($got_domdefs) {
- %domdefaults =
- &Apache::lonnet::get_domain_defaults($env{'user.domain'});
- $got_domdefs = 1;
- }
- unless ($got_userenv) {
- %userenv =
- &Apache::lonnet::userenvironment($env{'user.domain'},
- $env{'user.name'},@fromenv);
- $got_userenv = 1;
- }
$newenvhash{'environment.canrequest.'.$key} =
&Apache::lonnet::usertools_access($env{'user.name'},$env{'user.domain'},
- $key,'reload','requestcourses',\%userenv,\%domdefaults);
+ $key,'reload','requestcourses');
}
} elsif ($key eq 'requestauthor') {
$newenvhash{'environment.'.$key} = $changeHash{$key};
if ($changeHash{$key}) {
$newenvhash{'environment.canrequest.author'} = 1;
} else {
- unless ($got_domdefs) {
- %domdefaults =
- &Apache::lonnet::get_domain_defaults($env{'user.domain'});
- $got_domdefs = 1;
- }
- unless ($got_userenv) {
- %userenv =
- &Apache::lonnet::userenvironment($env{'user.domain'},
- $env{'user.name'},@fromenv);
- $got_userenv = 1;
- }
$newenvhash{'environment.canrequest.author'} =
&Apache::lonnet::usertools_access($env{'user.name'},$env{'user.domain'},
- $key,'reload','requestauthor',\%userenv,\%domdefaults);
- }
- } elsif ($key eq 'editors') {
- $newenvhash{'environment.author'.$key} = $changeHash{'author'.$key};
- if ($env{'form.customeditors'}) {
- $newenvhash{'environment.editors'} = $changeHash{'author'.$key};
- } else {
- unless ($got_domdefs) {
- %domdefaults =
- &Apache::lonnet::get_domain_defaults($env{'user.domain'});
- $got_domdefs = 1;
- }
- if ($domdefaults{'editors'} ne '') {
- $newenvhash{'environment.editors'} = $domdefaults{'editors'};
- } else {
- $newenvhash{'environment.editors'} = 'edit,xml';
- }
+ $key,'reload','requestauthor');
}
} elsif ($key ne 'quota') {
$newenvhash{'environment.tools.'.$key} =
@@ -3641,20 +3284,9 @@ sub update_user_data {
$newenvhash{'environment.availabletools.'.$key} =
$changeHash{'tools.'.$key};
} else {
- unless ($got_domdefs) {
- %domdefaults =
- &Apache::lonnet::get_domain_defaults($env{'user.domain'});
- $got_domdefs = 1;
- }
- unless ($got_userenv) {
- %userenv =
- &Apache::lonnet::userenvironment($env{'user.domain'},
- $env{'user.name'},@fromenv);
- $got_userenv = 1;
- }
$newenvhash{'environment.availabletools.'.$key} =
&Apache::lonnet::usertools_access($env{'user.name'},$env{'user.domain'},
- $key,'reload','tools',\%userenv,\%domdefaults);
+ $key,'reload','tools');
}
}
}
@@ -3662,10 +3294,6 @@ sub update_user_data {
&Apache::lonnet::appenv(\%newenvhash);
}
}
- if ($changed{'aboutme'}) {
- &Apache::loncommon::devalidate_aboutme_cache($env{'form.ccuname'},
- $env{'form.ccdomain'});
- }
}
}
if (keys(%namechanged) > 0) {
@@ -3696,7 +3324,7 @@ sub update_user_data {
\%newsettingstext);
if ($env{'form.cid'} ne $userenv{'id'}) {
&Apache::lonnet::idput($env{'form.ccdomain'},
- {$env{'form.ccuname'} => $env{'form.cid'}});
+ {$env{'form.ccuname'} => $env{'form.cid'}},$uhome,'ids');
if (($recurseid) &&
(&Apache::lonnet::allowed('mau',$env{'form.ccdomain'}))) {
my $idresult =
@@ -3835,19 +3463,15 @@ sub display_userinfo {
'webdav' => 'WebDAV Availability',
'aboutme' => 'Personal Information Page Availability',
'portfolio' => 'Portfolio Availability',
- 'timezone' => 'Can set own Time Zone',
'official' => 'Can Request Official Courses',
'unofficial' => 'Can Request Unofficial Courses',
'community' => 'Can Request Communities',
'textbook' => 'Can Request Textbook Courses',
+ 'placement' => 'Can Request Placement Tests',
'requestauthor' => 'Can Request Author Role',
'inststatus' => "Affiliation",
'prvs' => 'Previous Value:',
- 'chto' => 'Changed To:',
- 'editors' => "Available Editors in Authoring Space",
- 'edit' => 'Standard editor (Edit)',
- 'xml' => 'Text editor (EditXML)',
- 'daxe' => 'Daxe editor (Daxe)',
+ 'chto' => 'Changed To:'
);
if ($changed) {
$r->print('
'.$lt{'uic'}.'
'.
@@ -3872,13 +3496,10 @@ sub display_userinfo {
}
foreach my $entry (@{$order}) {
if ($canshow->{$entry}) {
- if (($entry eq 'requestcourses') || ($entry eq 'reqcrsotherdom') ||
- ($entry eq 'requestauthor') || ($entry eq 'authordefaults')) {
+ if (($entry eq 'requestcourses') || ($entry eq 'reqcrsotherdom') || ($entry eq 'requestauthor')) {
my @items;
if ($entry eq 'requestauthor') {
@items = ($entry);
- } elsif ($entry eq 'authordefaults') {
- @items = ('webdav','editors');
} else {
@items = @{$requestcourses};
}
@@ -4059,11 +3680,6 @@ sub tool_changes {
}
return;
}
- my %tooldesc = &Apache::lonlocal::texthash(
- 'edit' => 'Standard editor (Edit)',
- 'xml' => 'Text editor (EditXML)',
- 'daxe' => 'Daxe editor (Daxe)',
- );
foreach my $tool (@{$usertools}) {
my ($newval,$limit,$envkey);
$envkey = $context.'.'.$tool;
@@ -4077,29 +3693,6 @@ sub tool_changes {
} elsif ($context eq 'requestauthor') {
$newval = $env{'form.'.$context};
$envkey = $context;
- } elsif ($context eq 'authordefaults') {
- if ($tool eq 'editors') {
- $envkey = 'authoreditors';
- if ($env{'form.customeditors'} == 1) {
- my @editors;
- my @posseditors = &Apache::loncommon::get_env_multiple('form.custom_editor');
- if (@posseditors) {
- foreach my $editor (@posseditors) {
- if (grep(/^\Q$editor\E$/,@posseditors)) {
- unless (grep(/^\Q$editor\E$/,@editors)) {
- push(@editors,$editor);
- }
- }
- }
- }
- if (@editors) {
- $newval = join(',',(sort(@editors)));
- }
- }
- } elsif ($tool eq 'webdav') {
- $envkey = 'tools.webdav';
- $newval = $env{'form.'.$context.'_'.$tool};
- }
} else {
$newval = $env{'form.'.$context.'_'.$tool};
}
@@ -4118,17 +3711,6 @@ sub tool_changes {
} else {
$oldaccesstext->{$tool} = &mt("availability set to 'off'");
}
- } elsif ($context eq 'authordefaults') {
- if ($tool eq 'editors') {
- $oldaccesstext->{$tool} = &mt('can use: [_1]',
- join(', ', map { $tooldesc{$_} } split(/,/,$userenv->{$envkey})));
- } elsif ($tool eq 'webdav') {
- if ($userenv->{$envkey}) {
- $oldaccesstext->{$tool} = &mt("availability set to 'on'");
- } else {
- $oldaccesstext->{$tool} = &mt("availability set to 'off'");
- }
- }
} else {
if ($userenv->{$envkey}) {
$oldaccesstext->{$tool} = &mt("availability set to 'on'");
@@ -4155,17 +3737,6 @@ sub tool_changes {
} else {
$newaccesstext->{$tool} = &mt("availability set to 'off'");
}
- } elsif ($context eq 'authordefaults') {
- if ($tool eq 'editors') {
- $newaccesstext->{$tool} = &mt('can use: [_1]',
- join(', ', map { $tooldesc{$_} } split(/,/,$changeHash->{$envkey})));
- } elsif ($tool eq 'webdav') {
- if ($newval) {
- $newaccesstext->{$tool} = &mt("availability set to 'on'");
- } else {
- $newaccesstext->{$tool} = &mt("availability set to 'off'");
- }
- }
} else {
if ($newval) {
$newaccesstext->{$tool} = &mt("availability set to 'on'");
@@ -4176,28 +3747,17 @@ sub tool_changes {
} else {
$newaccess->{$tool} = $oldaccess->{$tool};
if (($context eq 'requestcourses') || ($context eq 'requestauthor')) {
- if ($userenv->{$envkey} =~ /^autolimit/) {
+ if ($newval =~ /^autolimit/) {
if ($limit) {
$newaccesstext->{$tool} = &mt('available with automatic approval, up to limit of [quant,_1,request] per user',$limit);
} else {
$newaccesstext->{$tool} = &mt('available with automatic approval (unlimited)');
}
- } elsif ($userenv->{$envkey}) {
- $newaccesstext->{$tool} = $reqdisplay{$userenv->{$envkey}};
+ } elsif ($newval) {
+ $newaccesstext->{$tool} = $reqdisplay{$newval};
} else {
$newaccesstext->{$tool} = &mt("availability set to 'off'");
}
- } elsif ($context eq 'authordefaults') {
- if ($tool eq 'editors') {
- $newaccesstext->{$tool} = &mt('can use: [_1]',
- join(', ', map { $tooldesc{$_} } split(/,/,$userenv->{$envkey})));
- } elsif ($tool eq 'webdav') {
- if ($userenv->{$envkey}) {
- $newaccesstext->{$tool} = &mt("availability set to 'on'");
- } else {
- $newaccesstext->{$tool} = &mt("availability set to 'off'");
- }
- }
} else {
if ($userenv->{$context.'.'.$tool}) {
$newaccesstext->{$tool} = &mt("availability set to 'on'");
@@ -4228,17 +3788,6 @@ sub tool_changes {
} else {
$newaccesstext->{$tool} = &mt("availability set to 'off'");
}
- } elsif ($context eq 'authordefaults') {
- if ($tool eq 'editors') {
- $newaccesstext->{$tool} = &mt('can use: [_1]',
- join(', ', map { $tooldesc{$_} } split(/,/,$newval)));
- } elsif ($tool eq 'webdav') {
- if ($userenv->{$envkey}) {
- $newaccesstext->{$tool} = &mt("availability set to 'on'");
- } else {
- $newaccesstext->{$tool} = &mt("availability set to 'off'");
- }
- }
} else {
if ($userenv->{$context.'.'.$tool}) {
$newaccesstext->{$tool} = &mt("availability set to 'on'");
@@ -4267,17 +3816,6 @@ sub tool_changes {
} else {
$newaccesstext->{$tool} = &mt("availability set to 'off'");
}
- } elsif ($context eq 'authordefaults') {
- if ($tool eq 'editors') {
- $newaccesstext->{$tool} = &mt('can use: [_1]',
- join(', ', map { $tooldesc{$_} } split(/,/,$newval)));
- } elsif ($tool eq 'webdav') {
- if ($newval) {
- $newaccesstext->{$tool} = &mt("availability set to 'on'");
- } else {
- $newaccesstext->{$tool} = &mt("availability set to 'off'");
- }
- }
} else {
if ($newval) {
$newaccesstext->{$tool} = &mt("availability set to 'on'");
@@ -4772,10 +4310,6 @@ sub tool_admin {
if (&Apache::lonnet::allowed('cau',$env{'request.role.domain'})) {
$canchange = 1;
}
- } elsif ($context eq 'authordefaults') {
- if (&Apache::lonnet::allowed('cau',$env{'request.role.domain'})) {
- $canchange = 1;
- }
} elsif (&Apache::lonnet::allowed('mut',$env{'form.ccdomain'})) {
# Current user has quota modification privileges
$canchange = 1;
@@ -4786,10 +4320,6 @@ sub tool_admin {
$toolchanged = 1;
if ($tool eq 'requestauthor') {
$changeHash->{$context} = $settool;
- } elsif ($tool eq 'editors') {
- $changeHash->{'author'.$tool} = $settool;
- } elsif ($tool eq 'webdav') {
- $changeHash->{'tools.'.$tool} = $settool;
} else {
$changeHash->{$context.'.'.$tool} = $settool;
}
@@ -5077,7 +4607,7 @@ sub handler {
if (&Apache::lonnet::auto_run($cnum,$cdom) && (($permission->{'cusr'}) || ($permission->{'view'}))) {
push(@allhelp,'Course_Automated_Enrollment');
}
- if (($permission->{'selfenrolladmin'}) || ($permission->{'selfenrollview'})) {
+ if ($permission->{'selfenrolladmin'}) {
push(@allhelp,'Course_Approve_Selfenroll');
}
}
@@ -5179,41 +4709,16 @@ sub handler {
if (! exists($env{'form.state'})) {
&Apache::lonuserutils::print_first_users_upload_form($r,$context);
} elsif ($env{'form.state'} eq 'got_file') {
- my $result =
- &Apache::lonuserutils::print_upload_manager_form($r,$context,
- $permission,
- $crstype,$showcredits);
- if ($result eq 'missingdata') {
- delete($env{'form.state'});
- &Apache::lonuserutils::print_first_users_upload_form($r,$context);
- }
+ &Apache::lonuserutils::print_upload_manager_form($r,$context,$permission,
+ $crstype,$showcredits);
} elsif ($env{'form.state'} eq 'enrolling') {
if ($env{'form.datatoken'}) {
- my $result = &Apache::lonuserutils::upfile_drop_add($r,$context,
- $permission,
- $showcredits);
- if ($result eq 'missingdata') {
- delete($env{'form.state'});
- &Apache::lonuserutils::print_first_users_upload_form($r,$context);
- } elsif ($result eq 'invalidhome') {
- $env{'form.state'} = 'got_file';
- delete($env{'form.lcserver'});
- my $result =
- &Apache::lonuserutils::print_upload_manager_form($r,$context,$permission,
- $crstype,$showcredits);
- if ($result eq 'missingdata') {
- delete($env{'form.state'});
- &Apache::lonuserutils::print_first_users_upload_form($r,$context);
- }
- }
- } else {
- delete($env{'form.state'});
- &Apache::lonuserutils::print_first_users_upload_form($r,$context);
+ &Apache::lonuserutils::upfile_drop_add($r,$context,$permission,
+ $showcredits);
}
} else {
&Apache::lonuserutils::print_first_users_upload_form($r,$context);
}
- $r->print('');
} elsif (((($env{'form.action'} eq 'singleuser') || ($env{'form.action'}
eq 'singlestudent')) && ($permission->{'cusr'})) ||
(($env{'form.action'} eq 'singleuser') && ($permission->{'view'})) ||
@@ -5319,7 +4824,7 @@ sub handler {
&print_useraccesslogs_display($r,$ccuname,$ccdomain,$permission,$brcrum);
}
} elsif ($env{'form.phase'} eq 'update_user_data') {
- &update_user_data($r,$context,$crstype,$brcrum,$showcredits,$permission);
+ &update_user_data($r,$context,$crstype,$brcrum,$showcredits);
} else {
&print_username_entry_form($r,$context,undef,$srch,undef,$crstype,
$brcrum,$permission);
@@ -5438,17 +4943,13 @@ sub handler {
my ($showstatus,$showemail,$pickstart);
my $numextras = 0;
my ($othertitle,$usertypes,$types) = &Apache::loncommon::sorted_inst_types($dom);
- if ((ref($types) eq 'ARRAY') && (@{$types} > 0)) {
- if (ref($usertypes) eq 'HASH') {
- if ($usertypes->{$usertype}) {
- $showstatus = $usertypes->{$usertype};
- } else {
- $showstatus = $othertitle;
- }
- if ($showstatus) {
- $numextras ++;
- }
+ if (ref($usertypes) eq 'HASH') {
+ if ($usertypes->{$usertype}) {
+ $showstatus = $usertypes->{$usertype};
+ } else {
+ $showstatus = $othertitle;
}
+ $numextras ++;
}
if (($info{$uname}{'email'} ne '') && ($info{$uname}{'email'} ne $uname)) {
$showemail = $info{$uname}{'email'};
@@ -5493,7 +4994,7 @@ sub handler {
&Apache::lonhtmlcommon::row_closure(1));
}
}
- if ($pickstart) {
+ if ($pickstart) {
$r->print(&Apache::lonhtmlcommon::end_pick_box().'
');
} else {
$r->print('
'.&mt('No information to display for this account request.').'
');
@@ -5617,9 +5118,8 @@ sub handler {
''.&mt('You do not have permission to modify dates or sections for users').'');
}
} elsif ($env{'form.action'} eq 'selfenroll') {
- my %currsettings;
- if ($permission->{selfenrolladmin} || $permission->{selfenrollview}) {
- %currsettings = (
+ if ($permission->{selfenrolladmin}) {
+ my %currsettings = (
selfenroll_types => $env{'course.'.$cid.'.internal.selfenroll_types'},
selfenroll_registered => $env{'course.'.$cid.'.internal.selfenroll_registered'},
selfenroll_section => $env{'course.'.$cid.'.internal.selfenroll_section'},
@@ -5635,8 +5135,6 @@ sub handler {
default_enrollment_end_date => $env{'course.'.$cid.'.default_enrollment_end_date'},
uniquecode => $env{'course.'.$cid.'.internal.uniquecode'},
);
- }
- if ($permission->{selfenrolladmin}) {
push(@{$brcrum},
{href => '/adm/createuser?action=selfenroll',
text => "Configure Self-enrollment",
@@ -5657,16 +5155,6 @@ sub handler {
$r->print('
'."\n");
- &print_selfenroll_menu($r,'course',$cid,$cdom,$cnum,\%currsettings,'',1);
} else {
$r->print(&header(undef,{'no_nav_bar' => 1}).
''.&mt('You do not have permission to configure self-enrollment').'');
@@ -5710,8 +5198,7 @@ sub handler {
''.&mt('You do not have permission to view change logs').'');
}
} elsif ($env{'form.action'} eq 'helpdesk') {
- if (($permission->{'owner'} || $permission->{'co-owner'}) &&
- ($permission->{'cusr'} || $permission->{'view'})) {
+ if (($permission->{'owner'}) || ($permission->{'co-owner'})) {
if ($env{'form.state'} eq 'process') {
if ($permission->{'owner'}) {
&update_helpdeskaccess($r,$permission,$brcrum);
@@ -6097,6 +5584,7 @@ sub print_main_menu {
groups => 'Community Groups',
},
);
+ $linktext{'Placement'} = $linktext{'Course'};
my %linktitle = (
'Course' => {
@@ -6111,6 +5599,8 @@ sub print_main_menu {
},
);
+ $linktitle{'Placement'} = $linktitle{'Course'};
+
push(@{ $menu[0]->{items} }, #Category: Single Users
{
linktext => $linktext{$crstype}{'single'},
@@ -6138,8 +5628,7 @@ sub print_main_menu {
icon => 'helpdesk-access.png',
#help => 'Course_Helpdesk_Access',
url => '/adm/createuser?action=helpdesk',
- permission => (($permission->{'owner'} || $permission->{'co-owner'}) &&
- ($permission->{'view'} || $permission->{'cusr'})),
+ permission => ($permission->{'owner'} || $permission->{'co-owner'}),
linktitle => 'Helpdesk access options',
},
{
@@ -6174,7 +5663,7 @@ sub print_main_menu {
icon => 'selfenrl-queue.png',
#help => 'Course_Approve_Selfenroll',
url => '/adm/createuser?action=selfenrollqueue',
- permission => $permission->{'selfenrolladmin'} || $permission->{'selfenrollview'},
+ permission => $permission->{'selfenrolladmin'},
linktitle =>'Approve or reject enrollment requests.',
},
);
@@ -6201,7 +5690,7 @@ sub print_main_menu {
icon => 'self_enroll.png',
#help => 'Course_Self_Enrollment',
url => '/adm/createuser?action=selfenroll',
- permission => $permission->{'selfenrolladmin'} || $permission->{'selfenrollview'},
+ permission => $permission->{'selfenrolladmin'},
linktitle => 'Configure user self-enrollment.',
},
);
@@ -6450,7 +5939,8 @@ ENDSCRIPT
'// ]]>'."\n".
''."\n".
'
'.$lt->{'selfenroll'}.'
'."\n";
- my $visactions = &cat_visibility($cdom);
+
+ my $visactions = &cat_visibility();
my ($cathash,%cattype);
my %domconfig = &Apache::lonnet::get_dom('configuration',['coursecategories'],$cdom);
if (ref($domconfig{'coursecategories'}) eq 'HASH') {
@@ -6995,7 +6485,6 @@ sub visible_in_stdcat {
}
sub cat_visibility {
- my ($cdom) = @_;
my %visactions = &Apache::lonlocal::texthash(
vis => 'This course/community currently appears in the Course/Community Catalog for this domain.',
gen => 'Courses can be both self-cataloging, based on an institutional code (e.g., fs08phy231), or can be assigned categories from a hierarchy defined for the domain.',
@@ -7008,24 +6497,13 @@ sub cat_visibility {
dc_chgconf => 'Ask a domain coordinator to change the Catalog type for this domain.',
dc_setcode => 'Ask a domain coordinator to assign a six character code to the course',
dc_unhide => 'Ask a domain coordinator to change the "Exclude from course catalog" setting.',
- dc_addinst => 'Ask a domain coordinator to enable catalog display of "Official courses (with institutional codes)".',
+ dc_addinst => 'Ask a domain coordinator to enable display the catalog of "Official courses (with institutional codes)".',
dc_instcode => 'Ask a domain coordinator to assign an institutional code (if this is an official course).',
dc_catalog => 'Ask a domain coordinator to enable or create at least one course category in the domain.',
dc_categories => 'Ask a domain coordinator to create a hierarchy of categories and sub categories for courses in the domain.',
dc_chgcat => 'Ask a domain coordinator to change the category assigned to the course, as the one currently assigned is no longer used in the domain',
dc_addcat => 'Ask a domain coordinator to assign a category to the course.',
);
- if ($env{'request.role'} eq "dc./$cdom/") {
- $visactions{'dc_chgconf'} = &mt('Use: "Main menu" [_1] "Set domain configuration" [_1] "Cataloging of courses/communities" to change the Catalog type for this domain.','»');
- $visactions{'dc_setcode'} = &mt('Use: "Main menu" [_1] "Set domain configuration" [_1] "Cataloging of courses/communities" to assign a six character code to the course.','»');
- $visactions{'dc_unhide'} = &mt('Use: "Main menu" [_1] "Set domain configuration" [_1] "Cataloging of courses/communities" to change the "Exclude from course catalog" setting.','»');
- $visactions{'dc_addinst'} = &mt('Use: "Main menu" [_1] "Set domain configuration" [_1] "Cataloging of courses/communities" to enable catalog display of "Official courses (with institutional codes)".','»');
- $visactions{'dc_instcode'} = &mt('Use: "Main menu" [_1] "View or modify a course or community" [_1] "View/Modify course owner, institutional code ... " to assign an institutional code (if this is an official course).','»');
- $visactions{'dc_catalog'} = &mt('Use: "Main menu" [_1] "Set domain configuration" [_1] "Cataloging of courses/communities" to enable or create at least one course category in the domain.','»');
- $visactions{'dc_categories'} = &mt('Use: "Main menu" [_1] "Set domain configuration" [_1] "Cataloging of courses/communities" to create a hierarchy of categories and sub categories for courses in the domain.','»');
- $visactions{'dc_chgcat'} = &mt('Use: "Main menu" [_1] "View or modify a course or community" [_1] "View/Modify catalog settings for course" to change the category assigned to the course, as the one currently assigned is no longer used in the domain.','»');
- $visactions{'dc_addcat'} = &mt('Use: "Main menu" [_1] "View or modify a course or community" [_1] "View/Modify catalog settings for course" to assign a category to the course.','»');
- }
$visactions{'unhide'} = &mt('Use [_1]Categorize course[_2] to change the "Exclude from course catalog" setting.','','"');
$visactions{'chgcat'} = &mt('Use [_1]Categorize course[_2] to change the category assigned to the course, as the one currently assigned is no longer used in the domain.','"','"');
$visactions{'addcat'} = &mt('Use [_1]Categorize course[_2] to assign a category to the course.','"','"');
@@ -7516,10 +6994,9 @@ ENDSCRIPT
my ($nav_script,$nav_links);
# table header
- my $heading = '