Пример #1
0
#-- solving
@define("CAPTCHA_FUZZY", 0.65);
// easier solving: accept 1 or 2 misguessed letters
@define("CAPTCHA_TRIES", 5);
// maximum failures for solving the captcha
@define("CAPTCHA_AJAX_TRIES", 25);
// AJAX testing limit (prevents brute-force cracking via check API)
@define("CAPTCHA_MAXPASSES", 2);
// 2 passes prevent user annoyment with caching/reload failures
@define("CAPTCHA_TIMEOUT", 5000);
// (in seconds/2) = 3:00 hours to solve a displayed captcha
@define("CAPTCHA_MIN_CHARS", 5);
// how many letters to use
@define("CAPTCHA_MAX_CHARS", 7);
#-- operation
@define("CAPTCHA_TEMP_DIR", easy_captcha_utility::tmp() . "/captcha/");
// storage directory for captcha handles
@define("CAPTCHA_PARAM_ID", "__ec_i");
@define("CAPTCHA_PARAM_INPUT", "__ec_s");
@define("CAPTCHA_BGCOLOR", 0xffffff);
// initial background color (non-inverse, white)
@define("CAPTCHA_SALT", ",e?c:7<");
#define("CAPTCHA_DATA_URLS", 0);     // RFC2397-URLs exclude MSIE users
@define("CAPTCHA_FONT_DIR", dirname(__FILE__));
@define("CAPTCHA_BASE_URL", (empty($_SERVER['HTTPS']) ? "http" : "https") . "://{$_SERVER['SERVER_NAME']}:{$_SERVER['SERVER_PORT']}/" . substr(realpath(__FILE__), strlen(realpath($_SERVER["DOCUMENT_ROOT"]))));
#-- texts
@define("CAPTCHA_PROMPT_TEXT", 'please enter the letters you recognize in the CAPTCHA image to the left');
@define("CAPTCHA_WHATIS_TEXT", 'What is %s = ');
@define("CAPTCHA_REDRAW_TEXT", 'click on image to redraw');
/* simple API */
class captcha