diff options
Diffstat (limited to 'phpBB/includes/captcha/captcha_gd.php')
-rw-r--r-- | phpBB/includes/captcha/captcha_gd.php | 132 |
1 files changed, 66 insertions, 66 deletions
diff --git a/phpBB/includes/captcha/captcha_gd.php b/phpBB/includes/captcha/captcha_gd.php index 9c9eb5eda7..74afc152a2 100644 --- a/phpBB/includes/captcha/captcha_gd.php +++ b/phpBB/includes/captcha/captcha_gd.php @@ -24,20 +24,20 @@ if (!defined('IN_PHPBB')) */ class captcha { - var $width = 360; - var $height = 96; + const width = 360; + const height = 96; /** * Create the image containing $code with a seed of $seed */ - function execute($code, $seed) + public static function execute($code, $seed) { global $config; srand($seed); mt_srand($seed); // Create image - $img = imagecreatetruecolor($this->width, $this->height); + $img = imagecreatetruecolor(self::width, self::height); // Generate colours $colour = new colour_manager($img, array( @@ -53,15 +53,15 @@ class captcha // Generate code characters $characters = $sizes = $bounding_boxes = array(); - $width_avail = $this->width - 15; + $width_avail = self::width - 15; $code_len = strlen($code); - $captcha_bitmaps = $this->captcha_bitmaps(); + $captcha_bitmaps = self::captcha_bitmaps(); for ($i = 0; $i < $code_len; ++$i) { $characters[$i] = new char_cube3d($captcha_bitmaps, $code[$i]); - list($min, $max) = $characters[$i]->range(); + list($min, $max) = char_cube3d::range(); $sizes[$i] = mt_rand($min, $max); $box = $characters[$i]->dimensions($sizes[$i]); @@ -82,20 +82,20 @@ class captcha if ($config['captcha_gd_x_grid']) { $grid = (int) $config['captcha_gd_x_grid']; - for ($y = 0; $y < $this->height; $y += mt_rand($grid - 2, $grid + 2)) + for ($y = 0; $y < self::height; $y += mt_rand($grid - 2, $grid + 2)) { $current_colour = $scheme[array_rand($scheme)]; - imageline($img, mt_rand(0,4), mt_rand($y - 3, $y), mt_rand($this->width - 5, $this->width), mt_rand($y - 3, $y), $current_colour); + imageline($img, mt_rand(0,4), mt_rand($y - 3, $y), mt_rand(self::width - 5, self::width), mt_rand($y - 3, $y), $current_colour); } } if ($config['captcha_gd_y_grid']) { $grid = (int) $config['captcha_gd_y_grid']; - for ($x = 0; $x < $this->width; $x += mt_rand($grid - 2, $grid + 2)) + for ($x = 0; $x < self::width; $x += mt_rand($grid - 2, $grid + 2)) { $current_colour = $scheme[array_rand($scheme)]; - imagedashedline($img, mt_rand($x -3, $x + 3), mt_rand(0, 4), mt_rand($x -3, $x + 3), mt_rand($this->height - 5, $this->height), $current_colour); + imagedashedline($img, mt_rand($x -3, $x + 3), mt_rand(0, 4), mt_rand($x -3, $x + 3), mt_rand(self::height - 5, self::height), $current_colour); } } @@ -104,7 +104,7 @@ class captcha { $dimm = $bounding_boxes[$i]; $xoffset += ($offset[$i] - $dimm[0]); - $yoffset = mt_rand(-$dimm[1], $this->height - $dimm[3]); + $yoffset = mt_rand(-$dimm[1], self::height - $dimm[3]); $characters[$i]->drawchar($sizes[$i], $xoffset, $yoffset, $img, $colour->get_resource('background'), $scheme); $xoffset += $dimm[2]; @@ -112,7 +112,7 @@ class captcha if ($config['captcha_gd_foreground_noise']) { - $this->noise_line($img, 0, 0, $this->width, $this->height, $colour->get_resource('background'), $scheme, $bg_colours); + self::noise_line($img, 0, 0, self::width, self::height, $colour->get_resource('background'), $scheme, $bg_colours); } // Send image @@ -125,7 +125,7 @@ class captcha /** * Noise line */ - function noise_line($img, $min_x, $min_y, $max_x, $max_y, $bg, $font, $non_font) + private static function noise_line($img, $min_x, $min_y, $max_x, $max_y, $bg, $font, $non_font) { imagesetthickness($img, 2); @@ -174,7 +174,7 @@ class captcha /** * Return bitmaps */ - function captcha_bitmaps() + private static function captcha_bitmaps() { return array( 'width' => 9, @@ -786,21 +786,21 @@ class captcha */ class char_cube3d { - var $bitmap; - var $bitmap_width; - var $bitmap_height; - - var $basis_matrix = array(array(1, 0, 0), array(0, 1, 0), array(0, 0, 1)); - var $abs_x = array(1, 0); - var $abs_y = array(0, 1); - var $x = 0; - var $y = 1; - var $z = 2; - var $letter = ''; + private $bitmap; + private $bitmap_width; + private $bitmap_height; + + private $basis_matrix = array(array(1, 0, 0), array(0, 1, 0), array(0, 0, 1)); + private $abs_x = array(1, 0); + private $abs_y = array(0, 1); + private $x = 0; + private $y = 1; + private $z = 2; + private $letter = ''; /** */ - function char_cube3d(&$bitmaps, $letter) + function __construct(&$bitmaps, $letter) { $this->bitmap = $bitmaps['data'][$letter]; $this->bitmap_width = $bitmaps['width']; @@ -886,7 +886,7 @@ class char_cube3d /** * Draw a character */ - function drawchar($scale, $xoff, $yoff, $img, $background, $colours) + public function drawchar($scale, $xoff, $yoff, $img, $background, $colours) { $width = $this->bitmap_width; $height = $this->bitmap_height; @@ -915,16 +915,16 @@ class char_cube3d $origin = array(0, 0, 0); $xvec = $this->scale($this->basis_matrix[$this->x], $scale); $yvec = $this->scale($this->basis_matrix[$this->y], $scale); - $face_corner = $this->sum2($xvec, $yvec); + $face_corner = self::sum2($xvec, $yvec); $zvec = $this->scale($this->basis_matrix[$this->z], $scale); - $x_corner = $this->sum2($xvec, $zvec); - $y_corner = $this->sum2($yvec, $zvec); + $x_corner = self::sum2($xvec, $zvec); + $y_corner = self::sum2($yvec, $zvec); - imagefilledpolygon($img, $this->gen_poly($xo, $yo, $origin, $xvec, $x_corner,$zvec), 4, $colour1); - imagefilledpolygon($img, $this->gen_poly($xo, $yo, $origin, $yvec, $y_corner,$zvec), 4, $colour2); + imagefilledpolygon($img, self::gen_poly($xo, $yo, $origin, $xvec, $x_corner,$zvec), 4, $colour1); + imagefilledpolygon($img, self::gen_poly($xo, $yo, $origin, $yvec, $y_corner,$zvec), 4, $colour2); - $face = $this->gen_poly($xo, $yo, $origin, $xvec, $face_corner, $yvec); + $face = self::gen_poly($xo, $yo, $origin, $xvec, $face_corner, $yvec); imagefilledpolygon($img, $face, 4, $background); imagepolygon($img, $face, 4, $colour1); @@ -936,7 +936,7 @@ class char_cube3d /* * return a roughly acceptable range of sizes for rendering with this texttype */ - function range() + public static function range() { return array(3, 4); } @@ -944,7 +944,7 @@ class char_cube3d /** * Vector length */ - function vectorlen($vector) + private static function vectorlen($vector) { return sqrt(pow($vector[0], 2) + pow($vector[1], 2) + pow($vector[2], 2)); } @@ -952,10 +952,10 @@ class char_cube3d /** * Normalize */ - function normalize(&$vector, $length = 1) + private static function normalize(&$vector, $length = 1) { $length = (( $length < 1) ? 1 : $length); - $length /= $this->vectorlen($vector); + $length /= self::vectorlen($vector); $vector[0] *= $length; $vector[1] *= $length; $vector[2] *= $length; @@ -963,7 +963,7 @@ class char_cube3d /** */ - function cross_product($vector1, $vector2) + private static function cross_product($vector1, $vector2) { $retval = array(0, 0, 0); $retval[0] = (($vector1[1] * $vector2[2]) - ($vector1[2] * $vector2[1])); @@ -975,21 +975,21 @@ class char_cube3d /** */ - function sum($vector1, $vector2) + private static function sum($vector1, $vector2) { return array($vector1[0] + $vector2[0], $vector1[1] + $vector2[1], $vector1[2] + $vector2[2]); } /** */ - function sum2($vector1, $vector2) + private static function sum2($vector1, $vector2) { return array($vector1[0] + $vector2[0], $vector1[1] + $vector2[1]); } /** */ - function scale($vector, $length) + private static function scale($vector, $length) { if (sizeof($vector) == 2) { @@ -1001,7 +1001,7 @@ class char_cube3d /** */ - function gen_poly($xoff, $yoff, &$vec1, &$vec2, &$vec3, &$vec4) + private static function gen_poly($xoff, $yoff, &$vec1, &$vec2, &$vec3, &$vec4) { $poly = array(); $poly[0] = $xoff + $vec1[0]; @@ -1019,7 +1019,7 @@ class char_cube3d /** * dimensions */ - function dimensions($size) + public function dimensions($size) { $xn = $this->scale($this->basis_matrix[$this->x], -($this->bitmap_width / 2) * $size); $xp = $this->scale($this->basis_matrix[$this->x], ($this->bitmap_width / 2) * $size); @@ -1027,10 +1027,10 @@ class char_cube3d $yp = $this->scale($this->basis_matrix[$this->y], ($this->bitmap_height / 2) * $size); $p = array(); - $p[0] = $this->sum2($xn, $yn); - $p[1] = $this->sum2($xp, $yn); - $p[2] = $this->sum2($xp, $yp); - $p[3] = $this->sum2($xn, $yp); + $p[0] = self::sum2($xn, $yn); + $p[1] = self::sum2($xp, $yn); + $p[2] = self::sum2($xp, $yp); + $p[3] = self::sum2($xn, $yp); $min_x = $max_x = $p[0][0]; $min_y = $max_y = $p[0][1]; @@ -1052,15 +1052,15 @@ class char_cube3d */ class colour_manager { - var $img; - var $mode; - var $colours; - var $named_colours; + private $img; + private $mode; + private $colours; + private $named_colours; /** * Create the colour manager, link it to the image resource */ - function colour_manager($img, $background = false, $mode = 'ahsv') + function __construct($img, $background = false, $mode = 'ahsv') { $this->img = $img; $this->mode = $mode; @@ -1077,7 +1077,7 @@ class colour_manager /** * Lookup a named colour resource */ - function get_resource($named_colour) + public function get_resource($named_colour) { if (isset($this->named_colours[$named_colour])) { @@ -1095,7 +1095,7 @@ class colour_manager /** * Assign a name to a colour resource */ - function name_colour($name, $resource) + private function name_colour($name, $resource) { $this->named_colours[$name] = $resource; } @@ -1103,7 +1103,7 @@ class colour_manager /** * names and allocates a colour resource */ - function allocate_named($name, $colour, $mode = false) + private function allocate_named($name, $colour, $mode = false) { $resource = $this->allocate($colour, $mode); @@ -1117,7 +1117,7 @@ class colour_manager /** * allocates a specified colour into the image */ - function allocate($colour, $mode = false) + private function allocate($colour, $mode = false) { if ($mode === false) { @@ -1164,7 +1164,7 @@ class colour_manager /** * randomly generates a colour, with optional params */ - function random_colour($params = array(), $mode = false) + private function random_colour($params = array(), $mode = false) { if ($mode === false) { @@ -1263,7 +1263,7 @@ class colour_manager /** */ - function colour_scheme($resource, $include_original = true) + public function colour_scheme($resource, $include_original = true) { $mode = 'hsv'; @@ -1289,7 +1289,7 @@ class colour_manager /** */ - function mono_range($resource, $count = 5, $include_original = true) + public function mono_range($resource, $count = 5, $include_original = true) { if (is_array($resource)) { @@ -1331,7 +1331,7 @@ class colour_manager /** * Convert from one colour model to another */ - function model_convert($colour, $from_model, $to_model) + private static function model_convert($colour, $from_model, $to_model) { if ($from_model == $to_model) { @@ -1387,7 +1387,7 @@ class colour_manager /** * Slightly altered from wikipedia's algorithm */ - function hsv2rgb($hsv) + private static function hsv2rgb($hsv) { colour_manager::normalize_hue($hsv[0]); @@ -1450,7 +1450,7 @@ class colour_manager /** * (more than) Slightly altered from wikipedia's algorithm */ - function rgb2hsv($rgb) + private static function rgb2hsv($rgb) { $r = min(255, max(0, $rgb[0])); $g = min(255, max(0, $rgb[1])); @@ -1488,7 +1488,7 @@ class colour_manager /** */ - function normalize_hue(&$hue) + private static function normalize_hue(&$hue) { $hue %= 360; @@ -1501,7 +1501,7 @@ class colour_manager /** * Alternate hue to hue */ - function ah2h($ahue) + private static function ah2h($ahue) { if (is_array($ahue)) { @@ -1535,7 +1535,7 @@ class colour_manager /** * hue to Alternate hue */ - function h2ah($hue) + private static function h2ah($hue) { if (is_array($hue)) { |