--- loncom/interface/lonmodifycourse.pm 2006/12/29 17:30:11 1.29
+++ loncom/interface/lonmodifycourse.pm 2007/12/30 23:22:41 1.37
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# handler for DC-only modifiable course settings
#
-# $Id: lonmodifycourse.pm,v 1.29 2006/12/29 17:30:11 raeburn Exp $
+# $Id: lonmodifycourse.pm,v 1.37 2007/12/30 23:22:41 raeburn Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -33,7 +33,7 @@ use Apache::lonnet;
use Apache::loncommon;
use Apache::lonhtmlcommon;
use Apache::lonlocal;
-use Apache::londropadd;
+use Apache::lonuserutils;
use Apache::lonpickcourse;
use LONCAPA::Enrollment;
use lib '/home/httpd/lib/perl';
@@ -67,7 +67,7 @@ sub get_enrollment_settings {
} else {
$enrollvar{$type} = localtime($settings{$item});
}
- } elsif ($type eq "sectionums") {
+ } elsif ($type eq "sectionnums") {
$enrollvar{$type} = $settings{$item};
$enrollvar{$type} =~ s/,/, /g;
} elsif ($type eq "authtype"
@@ -108,22 +108,12 @@ sub print_course_search_page {
my $action = '/adm/modifycourse';
my $cctitle = &Apache::lonnet::plaintext('cc',$type);
my $dctitle = &Apache::lonnet::plaintext('dc');
- my %lt=&Apache::lonlocal::texthash(
- 'some' => "Certain settings which control auto-enrollment of students from your institution's student information system.",
- 'crqo' => 'The total disk space allocated for storage of portfolio files in all groups in a course.',
- 'tmod' => 'To view or modify these settings use the criteria below to select a course from this domain.',
- );
- $r->print('
'.
- &mt('Course settings which only a [_1] may modify.'
- ,$dctitle).'
'.
- &mt('Although almost all course settings can be modified by a [_1], a number of settings exist which only a [_2] may change:',$cctitle,$dctitle).'
-
-
'.$lt{'some'}.'
-
'.$lt{'crqo'}.'
-
'.
-$lt{'tmod'}.' ('.$domdesc.')
-
- ');
+ $r->print(
+ '
'.&mt('Search for a course in the [_1] domain',$domdesc).'
'.
+ &mt('Actions available after selecting a course:').'
'.
+ '
'.&mt('Enter the course with the role of [_1]',$cctitle).'
'."\n".
+ '
'.&mt('View or modify course settings which only a [_1] may modify.'
+ ,$dctitle).'
'."\n".'
');
$r->print(&Apache::lonpickcourse::build_filters($filterlist,$type,
undef,undef,$filter,$action,'modifycourse'));
}
@@ -149,18 +139,22 @@ sub print_course_selection_page {
$filter{'domainfilter'} = $dom;
my %courses = &Apache::lonpickcourse::search_courses($r,$type,0,
\%filter);
- if (keys(%courses) > 0) {
- $r->print(&mt("Click a 'Select' button to view or modify settings for a [_1] which may only be modified by a [_2] in this domain.",lc($type),$dctitle).'
');
- }
-
&Apache::lonpickcourse::display_matched_courses($r,$type,0,$action,
%courses);
return;
}
sub print_modification_menu {
- my ($r,$cdesc) = @_;
+ my ($r,$cdesc,$domdesc) = @_;
&print_header($r,$cdesc);
+ my $type = 'Course';
+ my $action = '/adm/modifycourse';
+ my $cctitle = &Apache::lonnet::plaintext('cc',$type);
+ my $dctitle = &Apache::lonnet::plaintext('dc');
+ my %lt=&Apache::lonlocal::texthash(
+ 'some' => "Certain settings which control auto-enrollment of students from your institution's student information system.",
+ 'crqo' => 'The total disk space allocated for storage of portfolio files in all groups in a course.',
+ );
my @menu =
(
{ text => 'Modify quota for group portfolio files',
@@ -174,8 +168,14 @@ sub print_modification_menu {
}
);
my $menu_html = '
'.&mt('View/Modify settings for: ').$cdesc.'
'."\n".
- ''."\n".
- &hidden_form_elements();
+ &mt('Although almost all course settings can be modified by a [_1], a number of settings exist which only a [_2] may change:',$cctitle,$dctitle).'
+
+
'.$lt{'some'}.'
+
'.$lt{'crqo'}.'
+
+'."\n".
+ &hidden_form_elements();
+
foreach my $menu_item (@menu) {
$menu_html.='
';
$menu_html.='';
@@ -189,6 +189,16 @@ sub print_modification_menu {
return;
}
+sub print_ccrole_selected {
+ my ($r,$cdesc,$domdesc) = @_;
+ &print_header($r);
+ my ($cdom,$cnum) = split(/_/,$env{'form.pickedcourse'});
+ $r->print('');
+}
+
sub print_settings_display {
my ($r,$cdom,$cnum,$cdesc,$type) = @_;
my %enrollvar = &get_enrollment_settings($cdom,$cnum);
@@ -239,7 +249,7 @@ sub print_settings_display {
'.$lt{'back'}.''.&mt('Modify [_1]-only settings',$dctitle).''."\n".
-&hidden_form_elements().
+&hidden_form_elements().
'');
}
@@ -313,7 +323,7 @@ all settings except course code, course
'usrd' => 'Use the radio buttons to select a different course owner.',
'deam' => "Default Authentication method",
'deus' => "The default authentication method, and default authentication parameter (domain, initial password or argument) are used when automatic enrollment of students in a course requires addition of new user accounts in your domain, and the class list file contains empty entries for the <authtype> and <autharg> properties for the new student. If you choose 'internally authenticated', and leave the initial password field empty, the automated enrollment process will create a randomized password for each new student account that it adds to your LON-CAPA domain.",
- 'gobt' => "Modify settings",
+ 'gobt' => "Save",
);
my @bgcolors = ('#eeeeee','#cccccc');
@@ -368,19 +378,24 @@ all settings except course code, course
}
unless ($curr_authtype eq '') {
$curr_authfield = $curr_authtype.'arg';
- }
- my $javascript_validations=&Apache::londropadd::javascript_validations('modifycourse',$krbdefdom,$curr_authtype,$curr_authfield);
- my %param = ( formname => 'document.cmod',
+ }
+ my $javascript_validations=&Apache::lonuserutils::javascript_validations('modifycourse',$krbdefdom,$curr_authtype,$curr_authfield);
+ my %param = ( formname => 'document.'.$env{'form.phase'},
kerb_def_dom => $krbdefdom,
kerb_def_auth => $krbdef,
mode => 'modifycourse',
curr_authtype => $curr_authtype,
curr_autharg => $enrollvar{'autharg'}
);
- my $krbform = &Apache::loncommon::authform_kerberos(%param);
- my $intform = &Apache::loncommon::authform_internal(%param);
- my $locform = &Apache::loncommon::authform_local(%param);
-
+ my (%authform,$authenitems);
+ $authform{'krb'} = &Apache::loncommon::authform_kerberos(%param);
+ $authform{'int'} = &Apache::loncommon::authform_internal(%param);
+ $authform{'loc'} = &Apache::loncommon::authform_local(%param);
+ foreach my $item ('krb','int','loc') {
+ if ($authform{$item} ne '') {
+ $authenitems .= $authform{$item}.' ';
+ }
+ }
if ($numlocalcc == 0) {
$ownertable = $lt{'nocc'};
}
@@ -432,12 +447,12 @@ all settings except course code, course
my $mainheader = &mt('Course settings modifiable by [_1] only.',$dctitle);
my $hidden_elements = &hidden_form_elements();
$r->print(<
+
-
Use the appropriate text boxes and radio buttons below to change some or all of the four automated enrollment settings that may only be changed by a Domain Coordinator. Click the "$lt{'gobt'}" button to save your changes.
+
Use the appropriate text boxes and radio buttons below to change some or all of the four automated enrollment settings that may only be changed by a Domain Coordinator.
@@ -455,12 +470,7 @@ all settings except course code, course