--- loncom/interface/lonsupportreq.pm 2004/09/13 13:31:52 1.9 +++ loncom/interface/lonsupportreq.pm 2004/12/18 22:30:28 1.13 @@ -17,11 +17,14 @@ sub handler { if ($r->header_only) { return OK; } - - &Apache::loncommon::get_unprocessed_cgi($ENV{'QUERY_STRING'},['action','origurl','function']); - my $action = $ENV{'form.action'}; + &Apache::loncommon::get_unprocessed_cgi($ENV{'QUERY_STRING'},['origurl','function']); + if ($r->uri eq '/adm/helpdesk') { + &Apache::loncommon::get_posted_cgi($r); + } my $function = $ENV{'form.function'}; my $origurl = &Apache::lonnet::unescape($ENV{'form.origurl'}); + my $action = $ENV{'form.action'}; + if ($action eq 'process') { &print_request_receipt($r,$origurl,$function); } else { @@ -38,6 +41,7 @@ sub print_request_form { if (($tablecolor eq '') || ($tablecolor eq '#FFFFFF')) { $tablecolor = '#CCCCFF'; } + $ccode = ''; $os = $ENV{'browser.os'}; $browser = $ENV{'browser.type'}; $bversion = $ENV{'browser.version'}; @@ -49,14 +53,35 @@ sub print_request_form { $usec = $ENV{'request.course.sec'}; $cid = $ENV{'request.course.id'}; $server = $ENV{'SERVER_NAME'}; - my $scripttag = (<= 0) { + return true; + } + return false; + } +} END if ($cid =~ m/_/) { ($cdom,$cnum) = split/_/,$cid; @@ -313,20 +338,66 @@ END END - if ($coursecodes{$cnum}) { - foreach (@codetitles) { - $r->print(''.$_.': '.$codes{$cnum}{$_}.'; '); + if ($cnum) { + if ($coursecodes{$cnum}) { + foreach (@codetitles) { + $r->print(''.$_.': '.$codes{$cnum}{$_}.'; '); + } + $r->print(' '); + } else { + $r->print('Enter institutional course code:  + '); } - $r->print(' '); } else { - $r->print('Enter institutional course code:  + if ($totcodes > 0) { + my $numtitles = @codetitles; + if ($numtitles == 0) { + $r->print('Enter institutional course code:  '); + } else { + my $lasttitle = $numtitles; + if ($numtitles > 4) { + $lasttitle = 4; + } + $r->print(''); + for (my $i=1; $i<$numtitles; $i++) { + $r->print('' + ); + } + $r->print('
'.$codetitles[0].'
'."\n". + '
'.$codetitles[$i].'
'."\n". + ''."\n". + '
'); + if ($numtitles > 4) { + $r->print('

'.$codetitles[$numtitles].'
'."\n". + ''."\n"); + } + } + } else { + $r->print('Enter institutional course code:  + '); + } } if ($ctitle) { $r->print('
Title: '.$ctitle.''); } else { $r->print('
Enter course title:  - '); + '); } $r->print(< @@ -718,9 +789,9 @@ END sub retrieve_instcodes { my ($coursecodes,$codedom,$totcodes) = @_; - my %courses = &Apache::lonnet::courseiddump($codedom,'.',1); + my %courses = &Apache::lonnet::courseiddump($codedom,'.',1,'.','.'); foreach my $course (keys %courses) { - if ($courses{$course} =~ m/^[^:]*:([^:]+)$/) { + if ($courses{$course} =~ m/^[^:]*:([^:]+)/) { $$coursecodes{$course} = &Apache::lonnet::unescape($1); $totcodes ++; } @@ -923,18 +994,25 @@ sub recurse_list { sub javascript_code_selections { my ($numcats,$script_tag,$idlist,$idnums,$idlist_titles,$codetitles) = @_; + my $numtitles = @{$codetitles}; + my @seltitles = (); + for (my $j=0; $j<$numtitles; $j++) { + $seltitles[$j] = 'id'.$$codetitles[$j]; + } + my $seltitle_str = join('","',@seltitles); $$script_tag .= <