Esempio n. 1
0
 /**
  * Create Code
  *
  * @return bool
  */
 public function generateCode()
 {
     if ($this->invalid) {
         return false;
     }
     if ($this->mode === "bmp") {
         $this->config["num_chars"] = 4;
         $this->code = mt_rand(pow(10, $this->config["num_chars"] - 1), (int) str_pad("9", $this->config["num_chars"], "9"));
     } else {
         $raw_code = md5(uniqid(mt_rand(), 1));
         if (!empty($this->config["skip_characters"])) {
             $valid_code = str_replace($this->config["skip_characters"], "", $raw_code);
             $this->code = substr($valid_code, 0, $this->config["num_chars"]);
         } else {
             $this->code = substr($raw_code, 0, $this->config["num_chars"]);
         }
         if (!$this->config["casesensitive"]) {
             $this->code = strtoupper($this->code);
         }
     }
     $this->captcha_handler->setCode($this->code);
     return true;
 }