Diff for /loncom/interface/lonpickcourse.pm between versions 1.10 and 1.17

version 1.10, 2003/10/13 22:45:09 version 1.17, 2004/06/29 14:56:32
Line 51  ENDDOCUMENT Line 51  ENDDOCUMENT
 # Get parameters from query string  # Get parameters from query string
     &Apache::loncommon::get_unprocessed_cgi      &Apache::loncommon::get_unprocessed_cgi
         ($ENV{'QUERY_STRING'},['domainfilter','descriptfilter',          ($ENV{'QUERY_STRING'},['domainfilter','descriptfilter',
                  'sincefilter','form','cnumelement','cdomelement']);         'sincefilter','form','cnumelement',
          'cdomelement','cnameelement']);
 # domain filter and selection  # domain filter and selection
     my $domainfilter=$ENV{'form.domainfilter'};      my $domainfilter=$ENV{'form.domainfilter'};
     $domainfilter=~s/\W//g;      $domainfilter=~s/\W//g;
Line 60  ENDDOCUMENT Line 61  ENDDOCUMENT
                                                           'domainfilter',1);                                                            'domainfilter',1);
 # description filter  # description filter
     my $descriptfilter=$ENV{'form.descriptfilter'};      my $descriptfilter=$ENV{'form.descriptfilter'};
     $descriptfilter=~s/[^\w\s]//g;  
     unless ($descriptfilter) { $descriptfilter=''; }      unless ($descriptfilter) { $descriptfilter=''; }
       my $listdescript=&HTML::Entities::encode($descriptfilter,'<>&"');
 # last course activity filter and selection  # last course activity filter and selection
     my $sincefilter=$ENV{'form.sincefilter'};      my $sincefilter=$ENV{'form.sincefilter'};
     $sincefilter=~s/[^\d-]//g;      $sincefilter=~s/[^\d-]//g;
Line 84  ENDDOCUMENT Line 84  ENDDOCUMENT
        'cac' => 'Course Activity',         'cac' => 'Course Activity',
        'cde' => 'Course Description',         'cde' => 'Course Description',
        'cdo' => 'Course Domain');         'cdo' => 'Course Domain');
       my ($name_code,$name_input);
       if (defined($ENV{'form.cnameelement'}) && $ENV{'form.cnameelement'} ne '') {
    $name_code = "opener.document.$ENV{'form.form'}.$ENV{'form.cnameelement'}.value=cdesc;";
    $name_input ='<input type="hidden" name="cnameelement" value="'.
       $ENV{'form.cnameelement'}.'" />';
       }
     $r->print(<<ENDSCRIPT);      $r->print(<<ENDSCRIPT);
 <script>  <script>
 function gochoose(cname,cdom) {  function gochoose(cname,cdom,cdesc) {
     opener.document.$ENV{'form.form'}.$ENV{'form.cnumelement'}.value=cname;      $name_code
       opener.document.$ENV{"form.form"}.$ENV{'form.cnumelement'}.value=cname;
     var slct=opener.document.$ENV{'form.form'}.$ENV{'form.cdomelement'};      var slct=opener.document.$ENV{'form.form'}.$ENV{'form.cdomelement'};
     var i;      var i;
     for (i=0;i<slct.length;i++) {      for (i=0;i<slct.length;i++) {
Line 99  function gochoose(cname,cdom) { Line 106  function gochoose(cname,cdom) {
 <form method="post">  <form method="post">
 <input type="hidden" name="cnumelement" value="$ENV{'form.cnumelement'}" />  <input type="hidden" name="cnumelement" value="$ENV{'form.cnumelement'}" />
 <input type="hidden" name="cdomelement" value="$ENV{'form.cdomelement'}" />  <input type="hidden" name="cdomelement" value="$ENV{'form.cdomelement'}" />
   $name_input
 <input type="hidden" name="form" value="$ENV{'form.form'}" />  <input type="hidden" name="form" value="$ENV{'form.form'}" />
   
 $lt{'cac'}: $sincefilterform  $lt{'cac'}: $sincefilterform
Line 106  $lt{'cac'}: $sincefilterform Line 114  $lt{'cac'}: $sincefilterform
 $lt{'cdo'}: $domainselectform  $lt{'cdo'}: $domainselectform
 <br />  <br />
 $lt{'cde'}:  $lt{'cde'}:
 <input type="text" name="descriptfilter" size="40" value="$descriptfilter" />  <input type="text" name="descriptfilter" size="40" value="$listdescript" />
 <p><input type="submit" name="gosearch" value="Search" /></p>  <p><input type="submit" name="gosearch" value="Search" /></p>
 </form>  </form>
 <hr />  <hr />
Line 123  ENDSCRIPT Line 131  ENDSCRIPT
  $r->print('<form>');   $r->print('<form>');
  my %by_descrip;   my %by_descrip;
  foreach my $course (keys %courses) {   foreach my $course (keys %courses) {
     $by_descrip{lc($courses{$course})}=$course;              my $descr;
               if ($courses{$course} =~ m/^([^:]*):/) {
                   $descr = &Apache::lonnet::unescape($1);
               } else {
                   $descr = &Apache::lonnet::unescape($courses{$course});
               }
               $by_descrip{lc($descr)}=$course;
  }   }
  foreach my $description (sort(keys(%by_descrip))) {   foreach my $description (sort(keys(%by_descrip))) {
     my $course=$by_descrip{$description};      my $course=$by_descrip{$description};
       my $cleandesc=&HTML::Entities::encode($description,'<>&"');
       $cleandesc=~s/'/\\'/g;
     my ($cdom,$cnum)=split(/\_/,$course);      my ($cdom,$cnum)=split(/\_/,$course);
     $r->print('<input type="button" value="Select" onClick="gochoose('.      $r->print('<input type="button" value="Select" onClick="gochoose('.
   "'".$cnum."','".$cdom."')".'" /> '.$courses{$course}.' ('.    "'".$cnum."','".$cdom."','".$cleandesc."')".'" /> '.$description.' ('.
   ($Apache::lonnet::domaindescription{$cdom}?    ($Apache::lonnet::domaindescription{$cdom}?
                    $Apache::lonnet::domaindescription{$cdom}:$cdom).                     $Apache::lonnet::domaindescription{$cdom}:$cdom).
                  ")<br />\n");                   ")<br />\n");
  }   }
    if (!%courses) { $r->print(&mt('None found')); }
         $r->print('</form>');          $r->print('</form>');
     }      }
     $r->print('</body></html>');      $r->print('</body></html>');

Removed from v.1.10  
changed lines
  Added in v.1.17


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>