--- loncom/interface/loncreatecourse.pm 2020/05/22 19:57:57 1.158.2.6 +++ loncom/interface/loncreatecourse.pm 2017/01/18 20:15:50 1.165 @@ -1,7 +1,7 @@ # The LearningOnline Network # Create a course # -# $Id: loncreatecourse.pm,v 1.158.2.6 2020/05/22 19:57:57 raeburn Exp $ +# $Id: loncreatecourse.pm,v 1.165 2017/01/18 20:15:50 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -82,11 +82,7 @@ use Apache::lonlocal; use Apache::lonuserutils; use Apache::lonclonecourse; use LONCAPA::batchcreatecourse; -use LONCAPA qw(:DEFAULT :match); - -my $registered_flush; -my $registered_instcats; -my $modified_dom; +use LONCAPA; # ===================================================== Phase one: fill-in form @@ -95,6 +91,8 @@ sub print_course_creation_page { my $crstype = 'Community'; if ($env{'form.phase'} eq 'courseone') { $crstype = 'Course'; + } elsif ($env{'form.phase'} eq 'placementone') { + $crstype = 'Placement'; } my $defdom=$env{'request.role.domain'}; my %domdefaults = &Apache::lonnet::get_domain_defaults($defdom); @@ -103,7 +101,7 @@ sub print_course_creation_page { foreach my $server (sort(keys(%host_servers))) { $course_home .= qq{}; } @@ -120,9 +118,7 @@ sub print_course_creation_page { my $endtime = time+(6*30*24*60*60); # 6 months from now, approx my $access_table = &Apache::lonuserutils::date_setting_table($starttime, $endtime,'create_defaultdates'); - my $openallfrom = - &Apache::lonhtmlcommon::date_setter('ccrs','openallfrom',$starttime); - if ($crstype eq 'Course') { + if (($crstype eq 'Course') || ($crstype eq 'Placement')) { $enroll_table = &Apache::lonuserutils::date_setting_table($starttime, $endtime,'create_enrolldates'); ($krbdef,$krbdefdom) = @@ -191,7 +187,6 @@ function validate(formname) { 'shd' => 'Shift date parameters by number of days', 'assp' => "Assessment Parameters", 'oaas' => "Open all assessments", - 'sta' => "starting from:", 'mssg' => "Messaging", 'scpf' => "Set course policy feedback to Course Coordinator", 'scfc' => "Set resource content feedback to Course Coordinator", @@ -222,6 +217,7 @@ function validate(formname) { 'cgrq' => 'Set a quota for the total disk space available for storage of course group portfolio files', 'opco' => 'Open Course', 'opcm' => 'Open Community', + 'oppt' => 'Open Placement Test', ); $lt{'kaut'} = &mt('Key authority ([_1]id:domain[_2]) if other than course','',''); $lt{'toin'} = &mt('to interface with institutional data, e.g., [_1]fs13glg231[_2] for [_3]Fall 2013 Geology 231[_4]','','','',''); @@ -253,11 +249,21 @@ function validate(formname) { $lt{'cc'} = &mt('(will be assigned Coordinator role)'); $lt{'cgrs'} = &mt('Community Group Settings'); $lt{'cgrq'} = &mt('Set a quota for the total disk space available for storage of community group portfolio files'); + } elsif ($crstype eq 'Placement') { + $lt{'cinf'} = &mt('Placement Test Information'); + $lt{'ctit'} = &mt('Placement Test Title'); + $lt{'chsr'} = &mt('Placement Test Home Server'); + $lt{'cidn'} = &mt('Placement Test ID/Number'); + $lt{'crco'} = &mt('Placement Test Content'); + $lt{'cncr'} = &mt('Completely new placement test'); + $lt{'cecr'} = &mt('Clone an existing placement test'); + $lt{'sacr'} = &mt('Do NOT generate as standard placement test'); + $lt{'stco'} = &mt('standard placement tests only'); + $lt{'navi'} = &mt('Placement Test Contents'); + $lt{'cid'} = &mt('Placement Test ID'); } my $js = < -// $coursebrowserjs END @@ -285,6 +289,7 @@ END my %titles = &Apache::lonlocal::texthash( courseone => 'Create a New Course', groupone => 'Create a New Community', + placementone=> 'Create a New Placement Test', ); my $start_page = &Apache::loncommon::start_page($titles{$env{'form.phase'}},$js); @@ -296,7 +301,7 @@ END 'Create_Courses'); $r->print($start_page.$crumbs); - $r->print('
' + $r->print('
' .&Apache::lonhtmlcommon::start_pick_box() .&Apache::lonhtmlcommon::row_headline() @@ -329,14 +334,16 @@ END .'' .&Apache::lonhtmlcommon::row_closure() ); - if ($crstype eq 'Course') { + if (($crstype eq 'Course') || ($crstype eq 'Placement')) { $r->print(&Apache::lonhtmlcommon::row_headline() .'

'.$lt{'iinf'}.'

' - .$lt{'stat'}.' ' - .&mt('Default credits can also be specified, if different from the domain defaults (official courses: [_1]; unofficial courses: [_2]; textbook courses: [_3]).', - $domdefaults{'officialcredits'},$domdefaults{'unofficialcredits'},$domdefaults{'textbookcredits'}) - .&Apache::lonhtmlcommon::row_closure() - + .$lt{'stat'}); + if ($crstype eq 'Course') { + $r->print(' ' + .&mt('Default credits can also be specified, if different from the domain defaults (official courses: [_1]; unofficial courses: [_2]; textbook courses: [_3]).', + $domdefaults{'officialcredits'},$domdefaults{'unofficialcredits'},$domdefaults{'textbookcredits'})); + } + $r->print(&Apache::lonhtmlcommon::row_closure() .&Apache::lonhtmlcommon::row_title($lt{'ccod'}) .'' .'
('.$lt{'toin'}.')' @@ -352,7 +359,8 @@ END .'
('.$lt{'cscs'}.')' .&Apache::lonhtmlcommon::row_closure() ); - if ($domdefaults{'officialcredits'} || $domdefaults{'unofficialcredits'} || $domdefaults{'textbookcredits'}) { + if (($crstype eq 'Course') && ($domdefaults{'officialcredits'} || + $domdefaults{'unofficialcredits'} || $domdefaults{'textbookcredits'})) { $r->print(&Apache::lonhtmlcommon::row_title($lt{'ccre'}) .'' .'
('.$lt{'cred'}.')' @@ -363,9 +371,12 @@ END .'' .''.&mt('Yes').(' 'x2) .''.&mt('No') - .' .&Apache::lonhtmlcommon::row_closure() - ); + ); + } + my $blankchk; + if ($crstype eq 'Placement') { + $blankchk = ' checked="checked"'; } # Table: New Course / Clone Course $r->print(&Apache::lonhtmlcommon::row_headline() @@ -391,15 +402,14 @@ END .&Apache::lonhtmlcommon::row_closure() .&Apache::lonhtmlcommon::row_title($lt{'fres'}) .'' - .' '); + .''.$lt{'blnk'} + .''); if ($crstype eq 'Community') { - $r->print('
'. &Apache::loncommon::end_page()); } elsif (($permission->{'create'}) && - ($env{'form.phase'} eq 'requestchange') && ($show_all_choices)) { + ($env{'form.phase'} eq 'requestchange') && ($show_all_choices)) { if ($env{'form.queue'} eq 'pending') { &Apache::lonhtmlcommon::add_breadcrumb ({href=>"/adm/createcourse?phase=pendingdisplay", @@ -1496,7 +1458,7 @@ sub handler { $context,$env{'request.role.domain'}).'
'. &Apache::loncommon::end_page()); } elsif (($permission->{'create'}) && - ($env{'form.phase'} eq 'requestvalidation') && ($show_all_choices)) { + ($env{'form.phase'} eq 'requestvalidation') && ($show_all_choices)) { my $js = &courserequestbrowser_javascript(); &Apache::lonhtmlcommon::add_breadcrumb ({href=>"/adm/createcourse?phase=pendingdisplay",