--- loncom/interface/lonmodifycourse.pm 2007/10/03 19:57:29 1.33 +++ loncom/interface/lonmodifycourse.pm 2009/06/09 13:26:35 1.45 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # handler for DC-only modifiable course settings # -# $Id: lonmodifycourse.pm,v 1.33 2007/10/03 19:57:29 raeburn Exp $ +# $Id: lonmodifycourse.pm,v 1.45 2009/06/09 13:26:35 bisitz 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'; @@ -43,6 +43,22 @@ sub get_dc_settable { return ('courseowner','coursecode','authtype','autharg'); } +sub catalog_settable { + my ($confhash) = @_; + my @settable; + if (ref($confhash) eq 'HASH') { + if ($confhash->{'togglecats'} ne 'crs') { + push(@settable,'togglecats'); + } + if ($confhash->{'categorize'} ne 'crs') { + push(@settable,'categorize'); + } + } else { + push(@settable,('togglecats','categorize')); + } + return @settable; +} + sub get_enrollment_settings { my ($cdom,$cnum) = @_; my %settings = &Apache::lonnet::dump('environment',$cdom,$cnum); @@ -102,30 +118,21 @@ sub print_course_search_page { &print_header($r); my $filterlist = ['descriptfilter', 'instcodefilter','ownerfilter', - 'ownerdomfilter','coursefilter']; + 'coursefilter']; my $filter = {}; + my $numtitles; 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.', - 'tmod' => 'To view or modify these settings use the criteria below to select a course from this domain.', - ); - $r->print('
';
$menu_html.='';
@@ -189,6 +221,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);
@@ -203,7 +245,6 @@ sub print_settings_display {
'back' => "Back to options page",
);
- my @bgcolors = ('#eeeeee','#cccccc');
my $cctitle = &Apache::lonnet::plaintext('cc',$type);
my $dctitle = &Apache::lonnet::plaintext('dc');
my @modifiable_params = &get_dc_settable();
@@ -228,10 +269,16 @@ sub print_settings_display {
$disp_table .= &Apache::loncommon::end_data_table()."\n";
&print_header($r,$cdesc);
$r->print('
-
+'.$lt{'caes'}.'
-'.$lt{'caes'}.$cdesc.'
'.$lt{'cour'}.'
@@ -239,8 +286,8 @@ sub print_settings_display {
'.$lt{'back'}.' '.&mt('Modify [_1]-only settings',$dctitle).''."\n". -&hidden_form_elements(). -''); +&hidden_form_elements(). +'
'); } sub print_setquota { @@ -249,10 +296,10 @@ sub print_setquota { my $cctitle = &Apache::lonnet::plaintext('cc',$type); my $subdiv = &mt('Although a [_1] will assign the disk quota for each individual group, the size of the quota is constrained by the total disk space allocated by the [_2] for portfolio files in a course.',$cctitle,$dctitle); my %lt = &Apache::lonlocal::texthash( - 'cquo' => 'Disk space for storage of group portfolio files', + 'cquo' => 'Disk space for storage of group portfolio', 'gpqu' => 'Course portfolio files disk space', 'each' => 'Each course group can be assigned a quota for portfolio files uploaded to the group.', - 'modi' => 'Modify quota', + 'modi' => 'Save', 'back' => "Back to options page", ); my %settings = &Apache::lonnet::get('environment',['internal.coursequota'],$cdom,$cnum); @@ -279,6 +326,59 @@ ENDDOCUMENT return; } +sub print_catsettings { + my ($r,$cdom,$cnum,$cdesc) = @_; + &print_header($r,$cdesc); + my %lt = &Apache::lonlocal::texthash( + 'back' => 'Back to options page', + ); + $r->print(''."\n"); + return; +} + sub print_course_modification_page { my ($r,$cdom,$cnum,$cdesc,$domdesc) = @_; my %longtype = &course_settings_descrip(); @@ -293,7 +393,7 @@ sub print_course_modification_page { 'name' => "Name", 'unme' => "Username:Domain", 'stus' => "Status", - 'cquo' => "Disk space for storage of group portfolio files", + 'cquo' => "Disk space for storage of group portfolio", 'gpqu' => "Course portfolio files disk space", 'each' => "Each course group can be assigned a quota for portfolio files uploaded to the group.", 'cose' => "Course settings for LON-CAPA courses that control automated student enrollment based on classlist data available from your institution's student information system fall into two groups: (a) settings that can be modified by a Course Coordinator using the ", @@ -315,7 +415,6 @@ all settings except course code, course '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' => "Save", ); - my @bgcolors = ('#eeeeee','#cccccc'); my @coursepersonnel = &Apache::lonnet::getkeys('nohist_userroles',$cdom,$cnum); my @local_ccs = (); @@ -369,8 +468,8 @@ 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', @@ -437,7 +536,7 @@ all settings except course code, course my $mainheader = &mt('Course settings modifiable by [_1] only.',$dctitle); my $hidden_elements = &hidden_form_elements(); $r->print(<