--- loncom/interface/lonrequestcourse.pm 2009/09/07 06:30:49 1.30 +++ loncom/interface/lonrequestcourse.pm 2009/09/10 03:00:31 1.34 @@ -1,7 +1,7 @@ # The LearningOnline Network # Request a course # -# $Id: lonrequestcourse.pm,v 1.30 2009/09/07 06:30:49 raeburn Exp $ +# $Id: lonrequestcourse.pm,v 1.34 2009/09/10 03:00:31 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -527,9 +527,9 @@ sub form_elements { ); if ($env{'form.sectotal'} > 0) { for (my $i=0; $i<$env{'form.sectotal'}; $i++) { - $extras{'sec_'.$i} = 'checkbox', - $extras{'secnum_'.$i} = 'text', - $extras{'loncapasec_'.$i} = 'text', + $extras{'sec_'.$i} = 'radio'; + $extras{'secnum_'.$i} = 'text'; + $extras{'loncapasec_'.$i} = 'text'; } } my $crosslisttotal = $env{'form.crosslisttotal'}; @@ -724,7 +724,9 @@ END END - $r->print(&header('Course Requests',$js.$jscript,$loaditems).$crumb.'
'.&mt('Request creation of a new course, or manage pending course requests.').'
'. + ''.&mt('You may also add users later, once the course has been created, by using the "Manage course users" link, accessible from the "Main Menu".').'
'; return $output; } @@ -1526,10 +1731,12 @@ sub current_lc_sections { my @currsecs; if ($env{'form.sectotal'}) { for (my $i=0; $i<$env{'form.sectotal'}; $i++) { - if (defined($env{'form.loncapasec_'.$i})) { - my $lcsec = $env{'form.loncapasec_'.$i}; - unless (grep(/^\Q$lcsec\E$/,@currsecs)) { - push(@currsecs,$lcsec); + if ($env{'form.sec_'.$i}) { + if (defined($env{'form.loncapasec_'.$i})) { + my $lcsec = $env{'form.loncapasec_'.$i}; + unless (grep(/^\Q$lcsec\E$/,@currsecs)) { + push(@currsecs,$lcsec); + } } } } @@ -1933,14 +2140,22 @@ sub print_review { if (ref($disallowed) eq 'ARRAY') { next if (grep(/^$i$/,@{$disallowed})); } - my @allsecs = &Apache::loncommon::get_env_multiple('form.person_'.$i.'_sec'); + my @officialsecs = &Apache::loncommon::get_env_multiple('form.person_'.$i.'_sec'); + my @allsecs; + foreach my $sec (@officialsecs) { + next unless ($sec =~ /\w/); + next if ($sec =~ /\W/); + next if ($sec eq 'none'); + push(@allsecs,$sec); + } my $newsec = $env{'form.person_'.$i.'_newsec'}; $newsec =~ s/^\s+//; $newsec =~s/\s+$//; - my @newsecs = split(/[\s,;]+/,$newsec); + my @newsecs = split(/\s*[\s,;:]\s*/,$newsec); foreach my $sec (@newsecs) { + next unless ($sec =~ /\w/); next if ($sec =~ /\W/); - next if ($newsec eq 'none'); + next if ($sec eq 'none'); if ($sec ne '') { unless (grep(/^\Q$sec\E$/,@allsecs)) { push(@allsecs,$sec); @@ -2027,14 +2242,18 @@ sub dates_from_form { sub courseinfo_form { my ($dom,$formname,$crstype,$next) = @_; - my $nodescr = &mt('You must provide a (brief) course description.'); + my %lt = &Apache::lonlocal::texthash( + official => 'You must provide a (brief) course description.', + community => 'You must provide a (brief) community description.' + ); + $lt{'unofficial'} = $lt{'official'}; my $js_validate = <<"ENDJS";