27require_once DOL_DOCUMENT_ROOT.
'/core/modules/security/captcha/modules_captcha.php';
28require_once DOL_DOCUMENT_ROOT.
'/core/modules/security/generate/modGeneratePassStandard.class.php';
44 public $picto =
'fa-shield-alt';
56 $this->
id = strtolower(preg_replace(
'/^modCaptcha/i',
'', get_class($this)));
60 $this->langs = $langs;
72 return $langs->trans(
"DolibarrStandardCaptcha");
82 global $db, $conf, $langs, $user;
85 $generator->length =
'5';
86 $example = $generator->getExample();
88 if (function_exists(
"imagecreate") && function_exists(
"imagepng")) {
89 $img = imagecreate(80, 32);
91 return "Problem with GD creation";
93 $background_color = imagecolorallocate($img, 250, 250, 250);
94 $ecriture_color = imagecolorallocate($img, 0, 0, 0);
95 imagestring($img, 4, 15, 8, $example, $ecriture_color);
99 $image_data = ob_get_contents();
102 return '<img class="inline-block valignmiddle" src="data:image/png;base64,' . base64_encode($image_data) .
'" border="0" width="80" height="32" />';
105 $image_data_base64 =
'iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAIAAAACUFjqAAAAFElEQVR4nGNsaGhgwA2Y8MiNYGkA22EBlPG3fjQAAAAASUVORK5CYII=';
106 return '<img class="inline-block valignmiddle" src="data:image/png;base64,' . $image_data_base64 .
'" border="0" width="80" height="32" />';
124 $out =
'<!-- Captcha -->
125 <div class="trinputlogin">
126 <div class="tagtd tdinputlogin nowrap none valignmiddle">
128 <span class="fa fa-unlock"></span>
129 <span class="nofa span-icon-security inline-block">
130 <input id="securitycode" placeholder="'.$langs->trans(
"SecurityCode").
'" class="flat input-icon-security width125" type="text" maxlength="5" name="code" tabindex="3" autocomplete="off" />
132 <span class="nowrap inline-block">
133 <img class="inline-block valignmiddle" src="'.DOL_URL_ROOT.
'/core/antispamimage.php" border="0" width="80" height="32" id="img_securitycode" />
134 <a class="inline-block valignmiddle" href="'.$php_self.
'" tabindex="4" data-role="button" onclick="submitFormFromCaptcha(event)">'.
img_picto($langs->trans(
"Refresh"),
'refresh',
'id="captcha_refresh_img"').
'</a>
141 function submitFormFromCaptcha(event) {
142 console.log("submitFormFromCaptcha");
144 // Prevent the default action of the link
145 event.preventDefault();
147 const form = event.target.closest("form");
149 // Submit the form if found
151 console.log("we set actionlogin to value \"disabled\"");
152 document.getElementById("actionlogin").value = "disabled";
158 <!-- End code for Captcha -->'.
"\n";
173 $sessionkey =
'dol_antispam_value';
175 $ok = (array_key_exists($sessionkey, $_SESSION) && (strtolower($_SESSION[$sessionkey]) === strtolower(
GETPOST(
'code',
'restricthtml')))) ? 1 : 0;
Parent class for password rules/management modules.
Class to generate a password according to a dolibarr standard rule (12 random chars)
validateCodeAfterLoginSubmit()
Validate a captcha This function is called after a log to validate a captcha, before validating a pas...
getCaptchaCodeForForm($php_self='')
Return the HTML content to output on a form that need the captcha.
__construct($db, $conf, $langs, $user)
Constructor.
getDescription()
Return description of module.
getExample()
Return an example of password generated by this module.
Class to generate a password according to a dolibarr standard rule (12 random chars)
img_picto($titlealt, $picto, $moreatt='', $pictoisfullpath=0, $srconly=0, $notitle=0, $alt='', $morecss='', $marginleftonlyshort=2, $allowothertags=array())
Show picto whatever it's its name (generic function)
GETPOST($paramname, $check='alphanohtml', $method=0, $filter=null, $options=null, $noreplace=0)
Return value of a param into GET or POST supervariable.
conf($dolibarr_main_document_root)
Load conf file (file must exists)
global $conf
The following vars must be defined: $type2label $form $conf, $lang, The following vars may also be de...
$conf db user
Active Directory does not allow anonymous connections.