Diff for /loncom/homework/randomlylabel.pm between versions 1.28 and 1.30

version 1.28, 2006/05/30 12:45:37 version 1.30, 2007/09/25 23:16:13
Line 267  sub get_color_from_hexstring { Line 267  sub get_color_from_hexstring {
     return $imcolor;      return $imcolor;
 }  }
   
   sub add_click {
       my ($image) = @_;
   
       my $length=6;
       my $bgcolor=&get_color_from_hexstring($image,'FFFFFF');
       my $fgcolor=&get_color_from_hexstring($image,'009999');
   
       my ($x,$y) = split(':',$env{'form.clickdata'});
   
       $image->setThickness(3);
       $image->line($x-$length,$y,        $x+$length,$y,        $bgcolor);
       $image->line($x,        $y-$length,$x,        $y+$length,$bgcolor);
       $image->setThickness(1);
       $image->line($x-$length,$y,        $x+$length,$y,        $fgcolor);
       $image->line($x,        $y-$length,$x,        $y+$length,$fgcolor);
   }
   
 sub handler {  sub handler {
     my $r = shift;      my $r = shift;
     $r->content_type('image/png');      $r->content_type('image/png');
     $r->send_http_header;      $r->send_http_header;
     my (undef,$id) = split(/=/,$ENV{'QUERY_STRING'});  
     my $image;      &Apache::loncommon::get_unprocessed_cgi($ENV{'QUERY_STRING'});
     my $prefix="cgi.$id.";  
       my $prefix;
     if ($ENV{'QUERY_STRING'}=~/OBJCOUNT\=/) {      if ($ENV{'QUERY_STRING'}=~/OBJCOUNT\=/) {
  &Apache::loncommon::get_unprocessed_cgi($ENV{'QUERY_STRING'});  
  $prefix='form.';   $prefix='form.';
       } else {
    $prefix="cgi.$env{'form.token'}.";
     }      }
   
       my $image;
     if (defined($env{$prefix."BGIMG"})) {      if (defined($env{$prefix."BGIMG"})) {
  my $bgimg=&unescape($env{$prefix."BGIMG"});   my $bgimg=&unescape($env{$prefix."BGIMG"});
  #&Apache::lonnet::logthis("BGIMG is ".$bgimg);   #&Apache::lonnet::logthis("BGIMG is ".$bgimg);
  $image=&get_image($bgimg,0);   $image=&get_image($bgimg,0);
  if (! defined($image)) {   if (! defined($image)) {
     &Apache::lonnet::logthis('Unable to create image object for -'.      &Apache::lonnet::logthis('Unable to create image object for -'.
      $id.'-'.$bgimg);       $env{'form.token'}.'-'.$bgimg);
     return OK;      return OK;
  }   }
     } elsif (defined($env{$prefix."SIZE"})) {      } elsif (defined($env{$prefix."SIZE"})) {
Line 301  sub handler { Line 322  sub handler {
     $image->transparent($bgcolor);      $image->transparent($bgcolor);
  }   }
     } else {      } else {
  &Apache::lonnet::logthis('Unable to create image object, no info');   &Apache::lonnet::logthis('Unable to create image object, no info '.$prefix);
  return OK;   return OK;
     }      }
     #binmode(STDOUT);      #binmode(STDOUT);
Line 425  sub handler { Line 446  sub handler {
     &Apache::lonnet::logthis("randomlylabel unable to handle object of type $type");      &Apache::lonnet::logthis("randomlylabel unable to handle object of type $type");
  }   }
     }      }
       if (exists($env{'form.clickdata'})) { &add_click($image); }
     $image->setThickness(1);      $image->setThickness(1);
     $r->print($image->png);      $r->print($image->png);
     return OK;      return OK;

Removed from v.1.28  
changed lines
  Added in v.1.30


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