--- loncom/interface/lonpickcourse.pm 2005/10/14 19:11:56 1.34 +++ loncom/interface/lonpickcourse.pm 2005/11/15 20:46:40 1.35 @@ -1,7 +1,7 @@ # The LearningOnline Network # Pick a course # -# $Id: lonpickcourse.pm,v 1.34 2005/10/14 19:11:56 albertel Exp $ +# $Id: lonpickcourse.pm,v 1.35 2005/11/15 20:46:40 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -55,7 +55,7 @@ ENDDOCUMENT 'sincefilter','form','cnumelement', 'cdomelement','cnameelement','roleelement', 'pickedcourse','instcodefilter', - 'ownerfilter','coursefilter']); + 'ownerfilter','coursefilter','multiple']); # domain filter and selection my $domainfilter=$env{'form.domainfilter'}; $domainfilter=~s/\W//g; @@ -115,16 +115,15 @@ ENDDOCUMENT $seclist = join('","',@sections); } } -# if called from rolefilter, setup for multiple course selections. - my $multflag = 0; my $jscript; my $title = 'Selecting a course'; - if ($env{'form.form'} eq 'rolefilter') { - $multflag = 1; +# Setup for multiple course selections, if flag for multiples set. + my $multiple = $env{'form.multiple'}; + my $multelement; + if ($multiple) { $title = 'Selecting course(s)'; - } - if ($multflag) { $jscript = &Apache::loncommon::check_uncheck_jscript(); + $multelement = ''; } $r->print(&Apache::loncommon::bodytag($title,undef,$loaditem,undef,undef,undef,undef,1)); my %lt=&Apache::lonlocal::texthash( @@ -155,11 +154,11 @@ ENDDOCUMENT } $r->print(< -function gochoose(cname,cdom,cdesc,multflag,caller) { +function gochoose(cname,cdom,cdesc,multiple,caller) { var openerForm = "$env{'form.form'}"; courseCount = 0; var courses = ''; - if (multflag) { + if (multiple) { if (typeof(document.courselist.course_id.length) == 'undefined') { // only 1 course checkbox was created if (document.courselist.course_id.checked) { @@ -198,10 +197,11 @@ function gochoose(cname,cdom,cdesc,multf } else { $name_code opener.document.$env{'form.form'}.$env{'form.cnumelement'}.value=cname; - if (openerForm == 'cu') { + var slct=opener.document.$env{'form.form'}.$env{'form.cdomelement'}; + if (slct.options == undefined) { opener.document.$env{'form.form'}.$env{'form.cdomelement'}.value=cdom; - } else { - var slct=opener.document.$env{'form.form'}.$env{'form.cdomelement'}; + } + else { var i; for (i=0;i $roleelement +$multelement $lt{'cac'}: $sincefilterform
$lt{'cdo'}: $domainselectform @@ -294,7 +295,7 @@ ENDSCRIPT my $description = lc($descr); push (@{$by_descrip{$description}}, $course); } - if ($numcourses > 1 && $multflag) { + if ($numcourses > 1 && $multiple) { $r->print('    @@ -306,7 +307,7 @@ ENDSCRIPT $cleandesc=~s/'/\\'/g; my ($cdom,$cnum)=split(/\_/,$course); my ($descr,$instcode,$owner) = split/:/,$courses{$course}; - $r->print(&course_chooser($multflag,$cdom,$cnum,$cleandesc)); + $r->print(&course_chooser($multiple,$cdom,$cnum,$cleandesc)); $r->print($description.'('. ($Apache::lonnet::domaindescription{$cdom}? $Apache::lonnet::domaindescription{$cdom}:$cdom).")"); @@ -316,13 +317,13 @@ ENDSCRIPT unless ($owner eq '') { $r->print(", owner - ".&Apache::lonnet::unescape($owner)); } - if ($multflag) { $r->print("\n"); } + if ($multiple) { $r->print("\n"); } $r->print("
\n"); } } if (!%courses) { $r->print(&mt('None found')); - } elsif ($multflag) { + } elsif ($multiple) { $r->print(''); } $r->print(''."\n". @@ -336,9 +337,9 @@ ENDSCRIPT } sub course_chooser { - my ($multflag,$cdom,$cnum,$cleandesc) = @_; + my ($multiple,$cdom,$cnum,$cleandesc) = @_; my $output; - if ($multflag) { + if ($multiple) { $output = '