--- loncom/interface/lonpickcourse.pm 2007/10/03 19:57:29 1.64 +++ loncom/interface/lonpickcourse.pm 2007/10/22 22:16:38 1.66 @@ -1,7 +1,7 @@ # The LearningOnline Network # Pick a course # -# $Id: lonpickcourse.pm,v 1.64 2007/10/03 19:57:29 raeburn Exp $ +# $Id: lonpickcourse.pm,v 1.66 2007/10/22 22:16:38 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -72,7 +72,7 @@ sub handler { my $roledom = $env{'form.roleelement'}; if ($roledom) { $roleelement = ''; - $submitopener = &Apache::lonroles::processpick(); + $submitopener = &processpick(); $autosubmit = 'process_pick("'.$roledom.'")'; } @@ -83,7 +83,8 @@ sub handler { } my %loaditem; - if ($env{'form.form'} eq 'cu' && $env{'form.pickedcourse'}) { + if ((($env{'form.form'} eq 'cu') || ($env{'form.form'} eq 'studentform')) && + ($env{'form.pickedcourse'})) { $loaditem{'onload'} ="setSections()"; } $r->print(&Apache::loncommon::start_page($title,undef, @@ -92,7 +93,7 @@ sub handler { if ($env{'form.form'} eq 'portform') { $lastaction = 'document.courselist.submit()'; - } elsif ($env{'form.form'} eq 'cu') { + } elsif ($env{'form.form'} eq 'cu' || $env{'form.form'} eq 'studentform') { $lastaction = 'document.courselist.pickedcourse.value = cdom+"_"+cname;'."\n". 'document.courselist.submit();'; @@ -101,7 +102,7 @@ sub handler { } # if called to assign a role in a course to a user via CUSR - if ($env{'form.form'} eq 'cu') { + if ($env{'form.form'} eq 'cu' || $env{'form.form'} eq 'studentform') { $r->print(&create_user_javascript($type)); } @@ -137,6 +138,49 @@ sub handler { return OK; } +sub processpick { + my $openerform = 'rolechoice'; + if ($env{'form.form'} eq 'studentform') { + $openerform = $env{'form.form'}; + } + my $process_pick = <<"ENDONE"; + +"; + return $process_pick; +} + sub create_user_javascript { my ($type) = @_; my $output; @@ -176,7 +220,7 @@ sub display_matched_courses { foreach my $course (keys(%courses)) { my $descr; if (ref($courses{$course}) eq 'HASH') { - $descr = &unescape($courses{$course}{'description'}); + $descr = $courses{$course}{'description'}; } elsif ($courses{$course} =~ m/^([^:]*):/i) { $descr = &unescape($1); } else { @@ -200,7 +244,7 @@ sub display_matched_courses { my ($descr,$instcode,$ttype,@owners); if (ref($courses{$course}) eq 'HASH') { $descr = $courses{$course}{'description'}; - $instcode = $courses{$course}{'instcode'}; + $instcode = $courses{$course}{'inst_code'}; $ttype = $courses{$course}{'type'}; push(@owners,&unescape($courses{$course}{'owner'})); if (ref($courses{$course}{'co-owners'}) eq 'ARRAY') { @@ -342,8 +386,7 @@ sub build_filters { 'cog' => &mt('Course Type') ); - $typeselectform = '