Вход Регистрация
Файл: sys/inc/captcha.php
Строк: 53
<?
class captcha
{
  var 
$str;
  var 
$x 100;
  var 
$y 40;
  var 
$img;
  var 
$gif=false;
  var 
$png=false;
  var 
$jpg=false;

  function 
__construct($str)
  {
    if (!
function_exists('gd_info'))
    {
      
header('Location: /style/errors/gd_err.gif');
      exit;
    }
    if (
imagetypes() & IMG_PNG)$this->png=true;
    if (
imagetypes() & IMG_GIF)$this->gif=true;
    if (
imagetypes() & IMG_JPG)$this->jpg=true;
    
$this->str=$str;

    
$this->img=imagecreatetruecolor($this->x$this->y);
    
imagefill($this->img00imagecolorallocate ($this->img255255255));
  }

  function 
create()
  {
    for (
$i=0$i<;$i++ )
    {
      
$n $this->str[$i];
      if (
$this->png)$num[$n]=imagecreatefrompng(H.'/style/captcha/'.$n.'.png');
      elseif (
$this->gif)$num[$n]=imagecreatefromgif(H.'/style/captcha/'.$n.'.gif');
      elseif (
$this->jpg)$num[$n]=imagecreatefromjpeg(H.'/style/captcha/'.$n.'.jpg');
      
imagecopy($this->img$num[$n], $i*15+108001520);
    }
  }

  function 
MultiWave()
  {
    include_once 
H.'sys/inc/MultiWave.php';
    
$this->img=MultiWave($this->img);
  }

  function 
colorize($value=90)
  {
    if (
function_exists('imagefilter'))
      
imagefilter($this->imgIMG_FILTER_COLORIZEmt_rand(0$value), mt_rand(0$value), mt_rand(0$value));
  }

  function 
output($q=50)
  {
    @
ob_end_clean();
    if (
$this->jpg)
    {
      
header("Content-type: image/jpeg");
      
imagejpeg($this->img,null,$q);
    }
    elseif (
$this->png)
    {
      
header("Content-type: image/png");
      
imagepng($this->img);
    }
    elseif (
$this->gif)
    {
      
header("Content-type: image/gif");
      
imagegif($this->img);
    }
    exit;
  }
}
Онлайн: 0
Реклама