--- loncom/interface/loncreateuser.pm 2010/01/03 15:53:56 1.295.2.18
+++ loncom/interface/loncreateuser.pm 2010/01/19 20:49:41 1.295.2.21
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# Create a user
#
-# $Id: loncreateuser.pm,v 1.295.2.18 2010/01/03 15:53:56 raeburn Exp $
+# $Id: loncreateuser.pm,v 1.295.2.21 2010/01/19 20:49:41 raeburn Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -3951,10 +3951,22 @@ sub handler {
text=>"List Users"});
my ($cb_jscript,$jscript,$totcodes,$codetitles,$idlist,$idlist_titles);
my $formname = 'studentform';
- if ($context eq 'domain' && $env{'form.roletype'} eq 'course') {
- ($cb_jscript,$jscript,$totcodes,$codetitles,$idlist,$idlist_titles) =
- &Apache::lonuserutils::courses_selector($env{'request.role.domain'},
- $formname);
+ if (($context eq 'domain') && (($env{'form.roletype'} eq 'course') ||
+ ($env{'form.roletype'} eq 'community'))) {
+ if ($env{'form.roletype'} eq 'course') {
+ ($cb_jscript,$jscript,$totcodes,$codetitles,$idlist,$idlist_titles) =
+ &Apache::lonuserutils::courses_selector($env{'request.role.domain'},
+ $formname);
+ } elsif ($env{'form.roletype'} eq 'community') {
+ $cb_jscript =
+ &Apache::loncommon::coursebrowser_javascript($env{'request.role.domain'});
+ my %elements = (
+ coursepick => 'radio',
+ coursetotal => 'text',
+ courselist => 'text',
+ );
+ $jscript = &Apache::lonhtmlcommon::set_form_elements(\%elements);
+ }
$jscript .= &verify_user_display();
my $js = &add_script($jscript).$cb_jscript;
my $loadcode =
@@ -3983,7 +3995,7 @@ sub handler {
}
&Apache::lonhtmlcommon::add_breadcrumb
({href=>'/adm/createuser?action=drop',
- text=>$brtext);
+ text=>$brtext});
if (!exists($env{'form.state'})) {
$r->print(&Apache::lonhtmlcommon::breadcrumbs('Drop Students',
'Course_Drop_Student'));
@@ -4184,18 +4196,21 @@ sub print_main_menu {
permission => $permission->{'cusr'},
});
if (!exists($permission->{'cusr_section'})) {
- push(@courselinks,
- { text => 'Automated Enrollment Manager',
- help => 'Course_Automated_Enrollment',
- permission => (&Apache::lonnet::auto_run($cnum,$cdom)
- && $permission->{'cusr'}),
- url => '/adm/populate',
- },
- { text => 'Configure User Self-enrollment',
- help => 'Course_Self_Enrollment',
- action => 'selfenroll',
- permission => $permission->{'cusr'},
- });
+ if ($crstype ne 'Community') {
+ push(@courselinks,
+ { text => 'Automated Enrollment Manager',
+ help => 'Course_Automated_Enrollment',
+ permission => (&Apache::lonnet::auto_run($cnum,$cdom)
+ && $permission->{'cusr'}),
+ url => '/adm/populate',
+ });
+ }
+ push(@courselinks,
+ { text => 'Configure User Self-enrollment',
+ help => 'Course_Self_Enrollment',
+ action => 'selfenroll',
+ permission => $permission->{'cusr'},
+ });
}
if ($env{'course.'.$env{'request.course.id'}.'.internal.selfenroll_approval'}) {
push(@courselinks,
@@ -5689,7 +5704,7 @@ sub course_level_table {
$thiscourse=~s:_:/:g;
my %coursedata=&Apache::lonnet::coursedescription($thiscourse);
my $area=$coursedata{'description'};
- my $type=$coursedata{'type'};
+ my $crstype=$coursedata{'type'};
if (!defined($area)) { $area=&mt('Unavailable course').': '.$protectedcourse; }
my ($domain,$cnum)=split(/\//,$thiscourse);
my %sections_count;
@@ -5699,7 +5714,7 @@ sub course_level_table {
&Apache::loncommon::get_sections($domain,$cnum);
}
}
- my @roles = &Apache::lonuserutils::roles_by_context('course');
+ my @roles = &Apache::lonuserutils::roles_by_context('course','',$crstype);
foreach my $role (@roles) {
my $plrole=&Apache::lonnet::plaintext($role,$crstype);
if (&Apache::lonnet::allowed('c'.$role,$thiscourse)) {
@@ -5794,7 +5809,7 @@ sub course_level_dc {
'';
my $courseform=''.&Apache::loncommon::selectcourse_link
('cu','dccourse','dcdomain','coursedesc',undef,undef,'Course').'';
- my $cb_jscript = &Apache::loncommon::coursebrowser_javascript($dcdom,'currsec','cu');
+ my $cb_jscript = &Apache::loncommon::coursebrowser_javascript($dcdom,'currsec','cu','role','Course/Community Browser');
my %lt=&Apache::lonlocal::texthash(
'rol' => "Role",
'grs' => "Section",